【发布时间】:2013-02-13 15:21:11
【问题描述】:
我有一个嵌套表单,它拒绝将新记录插入数据库,尽管父级插入正常。毫无疑问,这是一个显而易见的问题,但有人能告诉我为什么吗?
父模型:
class Delivery < ActiveRecord::Base
attr_accessible :orders_attributes
has_many :orders, as: :orderable
accepts_nested_attributes_for :orders
嵌套模型
class Order < ActiveRecord::Base
attr_accessible :info
belongs_to :orderable, polymorphic: true
belongs_to :delivery
父控制器
def new
@delivery = Delivery.new
order = @delivery.orders.build
respond_to do |format|
format.html # new.html.erb
format.json { render json: @delivery }
end
end
表格
= form_for @delivery do |f|
= fields_for :orders do |builder|
= builder.label :info
= builder.text_area :info
.actions
= f.submit
输出:
在 2013-02-13 16:06:53 +0100 为 127.0.0.1 开始 POST "/deliveries" DeliveriesController#create 作为 HTML 参数处理: {"utf8"=>"✓", "authenticity_token"=>"MdNjphnBQaaHdxelT7RnWDNG2XPpDTQipDKAOkT57h0=", "orders"=>{"info"=>"1222"}, "commit"=>"Create Delivery"} (0.1ms) 开始事务 SQL (2.7ms) INSERT INTO "deliveries" ("created_at", "updated_at") 值 (?, ?) [["created_at", Wed, 13 2013 年 2 月 15:06:53 UTC +00:00],["updated_at",星期三,2013 年 2 月 13 日 15:06:53 UTC +00:00]] (1.3ms) 提交事务重定向到
您可以看到它正在发布订单数据,但它没有正确地将其放入数据库中......我错过了什么?
【问题讨论】:
标签: ruby-on-rails nested-forms nested-attributes