对于关联的对象实例,我有以下选择:
<%= f.select :shop_id, Shop.all.map {|shop| [shop.name, shop.id]} %>
我想动态地预选其中一个选项值,即不时不同。
我已经尝试过其他答案(例如https://stackoverflow.com/a/5216513/1417223)中给出的内容,但没有任何反应。
如何从 ID 中预选选项值?
对于关联的对象实例,我有以下选择:
<%= f.select :shop_id, Shop.all.map {|shop| [shop.name, shop.id]} %>
我想动态地预选其中一个选项值,即不时不同。
我已经尝试过其他答案(例如https://stackoverflow.com/a/5216513/1417223)中给出的内容,但没有任何反应。
如何从 ID 中预选选项值?
您需要使用options_from_collection_for_select
which 允许您指定要选择的选项
在此示例中,Shop
将选择 id 为 17 的:
<%= f.select :shop_id, options_from_collection_for_select(Shop.all, :id, :name, 17) %>
由于使用的是form_for,所以只需在控制器中设置值,不需要修改视图。
def new
@your_model = YourModel.new(shop_id: 10)
end