我在form_for中的选择列表看起来很奇怪:
<select id="user_user_status" name="user[user_status]">
<option value="#<UserType:0x007fcfb49bfee8>">7</option>
..
..
</select>
我有一个我创建的哈希:
UserStatus.all.each do |u|
USER_STATUS_BY_ID[u.id.to_i] = u
end
然后我在form_for中创建了我的选择列表,如:
<%= f.select :user_status, USER_STATUS_BY_ID.each {|k,v| [k, v.name]} %>
value.name似乎没有呈现名称,但似乎是整个对象?
我原本希望有名字ouputted ...
答案 0 :(得分:1)
请尝试以下方法:
<%= f.collection_select :user_status, UserStatus.all, :id, :name %>
更新:如果你想使用哈希,看起来你需要一张地图而不是每一张:
USER_STATUS_BY_ID.map {|k,v| [k, v.name]}