2014-11-26 2 views

ответ

0

«p.class» - это класс, а не имя класса, вместо этого попробуйте «p.class.name».

+0

да, он не проверяет имена классов. –

6

Вам не нужно специально проверять классы. Проверьте экземпляры, вот как работает случай.

p = Post.new 

case p 
when Post 
    "Thumbs up" 
else 
    "Thumbs down" 
end 

«У меня есть эта вещь p, что может быть? Является ли это сообщение или может быть строка, которая соответствует этому регулярному выражению? Или какой-нибудь другой предмет?»

Более подробную информацию о threequals оператора, власть за выражение случая рубина: https://stackoverflow.com/a/4528453/125816

+0

Это правильный способ сделать это. ИМХО все остальные ответы должны быть удалены. – GolfWolf

Смежные вопросы