这是我的biblios_helper.rb:
def main_language
[["français","frenchLit"],["latin","latinLit"],["ancien français","froLit"],["néerlandais","dutchLit"]]
end
添加新书目的表单包含:
<%= f.select(:langue_main) do %>
<% options_for_select(main_language, selected: params[:biblio] ? params[:biblio][:langue_main] :"") %>
<% end %>
这将导致此html:
<select name="biblio[main_language]" id="biblio_main_language"><option value="frenchLit">français</option>
<option value="latinLit">latin</option>
<option value="froLit">ancien français</option>
<option value="dutchLit">néerlandais</option></select>
那很好。但是,我有相同的代码,可以用来更新书目。
在数据库中,语言是“ froLit”,我希望默认显示在选择菜单中的语言是“ ancienfrançais”。我该怎么办?
答案 0 :(得分:0)
在编辑表单上,它将自动选择相应的选项作为默认选项,该选项已为此对象保存在数据库中-
<%=f.select :langue_main, options_for_select(main_language) %>
但是,如果您希望像往常一样被默认选择为["ancien français","froLit"]
,请尝试使用此选项-
<%=f.select :langue_main, options_for_select(main_language, "froLit") %>
答案 1 :(得分:0)
也许只是:
= f.select :langue_main, options_for_select(main_language, params.dig(:biblio, :langue_main))