这是我的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'。我怎么做?
在编辑表单上,它将自动选择相应的选项作为默认选项保存在此对象的数据库中 -
<%=f.select :langue_main, options_for_select(main_language) %>
但是,如果您希望默认选择为["ancien français","froLit"]
然后尝试这一个 -
<%=f.select :langue_main, options_for_select(main_language, "froLit") %>
也许只是:
= f.select :langue_main, options_for_select(main_language, params.dig(:biblio, :langue_main))