2014-01-22 120 views
0

我試圖讓用戶的選擇堅持在options_for_select。選擇選項,堅持選定的值

繼承人我的代碼:

<div class="form-group"> 
    <%= f.label :team_for, "I'm for" %> <br> 
    <%= f.select :team_for, options_for_select(User::TEAMFOR), :prompt => "Please Select" %> 
</div> 

我該怎麼設置呢?

我的HTML輸出:

<div class="form-group"> 
    <label for="user_team_for">I'm for</label> <br> 
    <select id="user_team_for" name="user[team_for]"> 

    <option value="">Please Select</option> 
    <option value="Team Druid">Team 1</option> 
    <option value="Team Hunter">Team 2</option> 
    <option value="Team Mage">Team 3</option> 
    <option value="Team Paladin">Team 4</option> 
    <option value="Team Priest">Team 5</option> 
    <option value="Team Rogue">Team 6</option> 
    <option value="Team Shaman">Team 7</option> 
    <option value="Team Warrior">Team 8</option></select> 
</div> 

如果我選擇的東西,它進入數據庫,並顯示正確,但在編輯頁面未顯示的選擇,而不是總是「團隊1」被設定爲選擇。

我需要顯示選定的值。

+0

你是什麼意思的 '棒' 呢?你想堅持它在數據庫中嗎? – Josh

+0

select在數據庫中並顯示正確,只有用於選擇的按鈕被重置爲提示。 –

+0

您可以發佈您的選擇列表正在輸出的html和您試圖保存的**精確**值嗎? – Josh

回答

1

的第二參數去options_for_select是所選的值:http://guides.rubyonrails.org/form_helpers.html#option-tags-from-a-collection-of-arbitrary-objects

的第二個參數options_for_select必須正好等於所需的內部值。特別是如果值是整數2,則不能將「2」傳遞給options_for_select - 必須通過2.請注意從params哈希中提取的值,因爲它們都是字符串。

試試這個:

<%= f.select :team_for, options_for_select(User::TEAMFOR, @user.team_for), :prompt => "Please Select" %>