Fle*_*exo 12 parameters ruby-on-rails nested-forms
我想得到一些嵌套的参数.我有一个包含许多物品的订单,这些物品都有一个类型.我想从控制器创建方法获取type_id参数.
@order = Order.new(params[:order])
@order.items.each do |f|
f.item_type_id = Item_type.find_by_name(f.item_type_id).id
end
Run Code Online (Sandbox Code Playgroud)
原因是我希望用户能够在视图中创建新的item_types.当他们这样做时,我使用AJAX调用将它们添加到数据库中.当他们发布表单时,我在item_type_id参数中获取item_type的名称,我想找到正确的item_type并将id设置为
Har*_*tty 26
要从以下位置访问嵌套字段,params
请执行以下操作:
params[:order][:items_attributes].values.each do |item|
item[:type_id]
end if params[:order] and params[:order][:items_attributes]
Run Code Online (Sandbox Code Playgroud)
如果您已声明正确的关联,则上述解决方案将起作用accepts_nested_attributes_for
.
class Order < ActiveRecord::Base
has_many :items
accepts_nested_attributes_for :items, :allow_destroy => true
end
class Item < ActiveRecord::Base
belongs_to :order
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
20341 次 |
最近记录: |