2010-10-15 21 views
0

我目前有我的index.html.erb顯示以下代碼。怪異country_options_for_select在Rails中

<select name="country"> 
<option>All</option> 
<%= country_options_for_select('All') %> 
</select> 

但頁面的結果變成這樣在HTML源代碼:

<select name="country"> 
<option>All</option> 
&lt;optionvalue=&quot;Afghanistan&quot;&gt;Afghanistan&lt;/option&gt;&lt;optionvalue=&quot;Aland 
Islands&quot;&gt;AlandIslands&lt;/option&gt; ... 
</select> 

應該不是<選項>

我做了什麼錯?

回答

1

在Rails 2.3.14到Rails 3.1.0,這個工程:

<%= country_options_for_select.html_safe %> 
1

請嘗試使用select_tag代替。它看起來有點乾淨。

<%= select_tag "name", country_options_for_select() %> 

國家選項顯示不正確的原因是因爲您正在向其傳遞'全部'。在你的情況下,它不需要論證。只有當你想要默認選擇某個選項。

例如,

<%= select_tag "name", country_options_for_select('Chile') %> 

更多關於它的信息是用在這裏:http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/country_options_for_select

+0

嗯,沒有按」工作。結果仍然是<選擇的id =「國家」名稱=「國家」> <期權價值= "阿富汗" >阿富汗< /選項> <期權價值= "奧蘭羣島" >奧蘭羣島< /選項> – Victor 2010-10-16 02:54:57

+0

這是回答我正在尋找,謝謝!令人難以置信的是,有關這兩位助手的信息非常少!再次感謝! – jlstr 2013-02-01 01:41:50