【发布时间】:2020-07-22 03:46:45
【问题描述】:
我有一个适用于 4 个模型的小班。我想以“正确”的方式做事。基本上,我想创建 2 个 Address 模型、1 个 Shipment(带有 2 个 address_ids 和属于 Shipment 的 1 Parcel。
在这一点上,我很困惑。我需要克服这一点并进入下一个重要里程碑。这看起来很有希望,还是您建议在控制器中保存 2 条记录,然后使用 after_create 或类似的东西?谢谢。
class Quote
include ActiveModel::Model
attr_accessor address_to: {
:name, :company, :street1, :street2, :street3, :city, :state,
:zip, :country, :phone, :email},
address_from: {
:name, :company, :street1, :street2, :street3, :city, :state,
:zip, :country, :phone, :email
}
def save
return false if invalid?
ActiveRecord::Base.transaction do
user = User.find_by(id: user_id)
user.addresses.create!([{address_from, address_to}]) # how to do this?
end
end
end
【问题讨论】:
标签: ruby-on-rails activerecord active-model-serializers