2011-03-07 60 views
6

我想知道如何在form_for select上設置默認值。如何設置form_for的默認值select

我的代碼是這樣的:

<%= form_for(@user) do |f| %> 
. 
. 
. 

<div class="field"> 
<%= f.select(:user_group_id, options_for_select(@user_groups.collect {|p| [ p.name, p.id ] }, "Select Category")) %> 
</div> 
<%= end %> 

很顯然,這將返回現場USER_GROUP的所有值。在我的編輯頁面上,我想將默認值設置爲用戶在user_group中的任何值。請幫助

+0

您的代碼示例沒有顯示出來。如果你解決了這個問題,你的問題可能會很快得到解答...... – 2011-03-07 04:06:10

回答

11

您可以將第二個選項傳遞給options_for_select,表示所選的

options_for_select(@user_groups.collect { |p| [p.name, p.id] }, @user.user_group) 

顯然,我不知道你是如何模型成立,但如果有必要,你使用像find的方法來找到你想要的條目。

1

添加一個參數:選定=>

<%= form_for(@user) do |f| %> 
    . 
    . 
    . 

    <div class="field"> 
    <%= f.select(:user_group_id, options_for_select(@user_groups.collect {|p| [ p.name, p.id ] }, "Select Category"), :selected =>f.object.user_group_id) %> 
    </div> 
    <%= end %>