2013-07-22 16 views
10

select_tagには次のものがあります。それはうまく動作します。options_from_collection_for_selectの複数のフィールドを取得する方法

<option value="4">Fred</option> 

しかし、私がしたい::(。それはモデルに関連付けられていない検索用ですので、私はselect_tagを使用しています)

options_from_collection_for_select(@customers, :id, :first_name) 

現在のHTML出力がある

<option value="4">Fred Flintstone</option> 

私は名前の代わりにフルネームを表示したい。 "first_name"と "last_name"の両方のフィールドを使用するようには思えません。また、2つのフィールドを連結するメソッドを呼び出す方法もわかりません。これをどのように機能させることができますか?

答えて

12

あなたはあなたのモデルに定義することができます:あなたのモデルで

options_from_collection_for_select(@customers, :id, :name)

+0

ありがとう、同じ問題を解決しました。 –

17

addメソッドのFULL_NAME:

def name; "#{first_name} #{last_name}";end

と使用

def full_name 
    "#{first_name} #{last_name}" 
end 

、これを使用します。

options_from_collection_for_select(@customers, :id, :full_name) 

希望すると、これが役に立ちます。

+0

ありがとう、Rails Guy。ベルナルドは10分でパンチを倒したので、彼の答えは「解決済み」とマークした。私はあなたの助けに感謝します! – circle1

+0

私はページをリロードし、彼の答えを見ることができたなら私は答えません。 BTWはアップボーディングに感謝します。 –

+0

@RailsGuy:ありがとう、同じ問題を解決しました。 :) –

関連する問題