2016-08-12 99 views
0

我在这里搜索了各处,似乎无法找到答案。Rails options_for_select默认设置

我试图将我的语言下拉菜单的默认值设置为英文。

<%= f.collection_select(:native_language, Language.order('language ASC').all, :language, :language, :selected => [Language.find_by(:language => "English")]) %> 

我在做什么错?

回答

0

可以使用选择或collection_select:

<%= f.collection_select(:native_language, Language.order('language ASC').all, :language, :language, {:selected => Language.find_by(:language => "English").language} %> 

OR

<%= f.select :native_language, options_for_select(Language.order('language ASC').all, Language.find_by(:language => "English").language) %> 
+0

都返回 '未定义的方法'地图' 为#<语言:0x007fa766c07438>” – gwalshington

+1

<%= f.select:native_language ,options_for_select(Language.order('language ASC')。all,Language.find_by(:language =>“English”).id)%> –

+0

接近,但现在所有下拉选项都会显示'Language:0x007fa766c07438'而不是语言名称。 – gwalshington