4

私は次のものを持っていますが、メソッドが「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 の場合にエラーが発生します。その場合、どうすればそれを防ぐことができますか?

4

2 に答える 2

12

.to_s各変数に追加してみることができると思いますか? 元。contact.first_name.to_s. nil の場合は になり""ます。

于 2011-02-22T06:17:06.137 に答える
0

これは、三項演算子に適した場所だと思います。

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

連絡先のタイトルが存在する場合はそれを使用し、存在しない場合は「デフォルト」を使用します。

于 2015-01-23T15:50:58.317 に答える