【发布时间】:2012-12-31 04:14:50
【问题描述】:
我正在尝试在我的表单中包含以下 HTML 代码:
<select name="user[language_ids][]">
<option value="">Please select</option>
<option value="1" selected="selected">English</option>
<option value="2">Spanish</option>
</select>
<select name="user[language_ids][]">
<option value="">Please select</option>
<option value="1" selected="selected">English</option>
<option value="2">Spanish</option>
</select>
允许用户在注册时选择两种语言。
我已经试过了:
<%= f.label :languages %>
<%= f.collection_select(:language_ids, Language.all, :id, :name) %>
<%= f.collection_select(:language_ids, Language.all, :id, :name) %>
还有这个:
<%= f.label :languages %>
<%= f.collection_select(:language_ids[], Language.all, :id, :name) %>
<%= f.collection_select(:language_ids[], Language.all, :id, :name) %>
在查看答案后,我尝试了这个:
<%= collection_select(:user, :language_ids, Language.all, :id, :name, {}, {:name => 'user[language_ids][]' }) %>
<%= collection_select(:user, :language_ids, Language.all, :id, :name, {}, {:name => 'user[language_ids][]' }) %>
但这里的问题是两个选择具有相同的 ID,而且它们与表单构建器 f 没有关联
有什么好的方法吗?
【问题讨论】:
-
您是否在 show.html.erb 中看到语言的 ID 而不是它们的名称?
-
选择字段与模型有何关系?
标签: ruby-on-rails forms