即使有零,我怎么还能做gsub?

时间:2011-02-22 06:12:16

标签: ruby-on-rails gsub

我有以下内容,当方法出现“nil”时它会爆炸?在这种情况下,我怎么能默认没有替代?

 message.gsub("{FirstName}", contact.first_name).
         gsub("{LastName}", contact.last_name).
         gsub("{Title}", contact.title).
         gsub("{Company}", contact.company_name.clear_company).
         gsub("{Colleagues}", colleagues.to_sentence).

例如,当contact.title为nil时,我收到错误。如何在那种情况下防止这种情况?

2 个答案:

答案 0 :(得分:12)

我猜你可以尝试将.to_s附加到每个变量上吗?恩。 contact.first_name.to_s。如果它是零,则它将变为""

答案 1 :(得分:0)

我认为这对三元运营商来说是一个好地方。

.gsub("{Title}", contact.title ? contact.title : "default").

如果联系人标题存在,那么它将使用它,如果不存在,它将使用“默认”。