1

次のことを行うより短い方法はありますか?

foo = 
  config.include?(:bar) ?
    "#{bar}.baz" :
    "baz"

変数を追加する読み取り可能なワンライナーと、変数が存在する場合は区切り文字を探しています(文字列であると想定)。

configハッシュです。

4

2 に答える 2

4

あなたはこれを行うことができます:

foo = [bar, 'baz'].compact.join('.')

barがnilの場合compact、配列から削除され、区切り文字は追加されません。

于 2012-12-07T08:39:04.177 に答える
2
foo = "#{"bar." if config.include?(:bar)}baz"
于 2012-12-07T08:38:51.107 に答える