2010-11-03 10 views

Répondre

6

Si vous souhaitez obtenir le nom de la classe, essayez:

u.class.to_s 

Edit:

Comme Sergey a souligné dans sa réponse, il est préférable d'utiliser

u.class.name 

I croire que c'est parce que to_s pourrait être écrasé et il pourrait éventuellement retourner une chaîne différente que celle retournée par name.

0

Essayez u.inspect et voir si l'un de cette information à vos besoins.

7

La façon la plus "droit" de la documentation Ruby est d'utiliser u.class.name Mise à jour: la réponse - u.name.to_s qui a été sélectionné comme correct - pas juste, la cause:

par exemple:

class A 
    def self.to_s 
    "BBB" 
    end 
end 

ruby-1.8.7-p302 > a.class.to_s 
=> "BBB" 
ruby-1.8.7-p302 > a.class.name 
=> "A" 
Questions connexes