Ruby on rails 3 Rails 3-如果on有多个,则拒绝:不可能通过关联?

Ruby on rails 3 Rails 3-如果on有多个,则拒绝:不可能通过关联?,ruby-on-rails-3,nested-attributes,has-many-through,Ruby On Rails 3,Nested Attributes,Has Many Through,你好 我的嵌套表单设置有点问题 型号“时间换档” 创建人和更新人通过表单自动填写、订单号和确认日期 嗯。。。我绝对没有问题去创造一个新的职位 <%= f.simple_fields_for :article_position_time_shifting_assignments do |builder| %> 这将不起作用,因为在保存相应的article_position之前没有article_position_id:-/ 有什么办法解决这个问题吗 干杯 Michael实际上,它将在

你好

我的嵌套表单设置有点问题

型号“时间换档”

创建人和更新人通过表单自动填写、订单号和确认日期

嗯。。。我绝对没有问题去创造一个新的职位

<%= f.simple_fields_for :article_position_time_shifting_assignments do |builder| %>
这将不起作用,因为在保存相应的article_position之前没有article_position_id:-/

有什么办法解决这个问题吗

干杯


Michael

实际上,它将在映射表(ArticlePositionTimeShiftingAssignment)中创建新记录,这是正确的,因为它是多对多关联。所以在这种情况下,将一些额外的记录分配给映射表并不是一个好方法。

Mhh。你说的话很有道理。我只是看不到正确的选择。。。当用户创建时间转换时,他应该能够添加/创建一些文章位置。这些物品的位置可以稍后用于其他时间移动。每个创建/分配的物品位置都应该有一些附加字段(订单号、交货日期)。嗯……我需要一张有(时间、物品、位置、食物)的桌子。Foobar_id将链接到其他属性。这不是完全一样吗?
class ArticlePositionTimeShiftingAssignment < ActiveRecord::Base
  belongs_to :article_position
  belongs_to :time_shifting
  accepts_nested_attributes_for :article_position, :reject_if => proc { |obj| obj['baan_id'].blank? }
end
class ArticlePosition < ActiveRecord::Base
  has_many :article_position_time_shifting_assignments
  has_many :time_shiftings, :through => :article_position_time_shifting_assignments
end
  create_table "article_position_time_shifting_assignments", :force => true do |t|
    t.integer  "article_position_id"
    t.integer  "time_shifting_id"
    t.integer  "created_by"
    t.integer  "updated_by"
    t.datetime "created_at"
    t.datetime "updated_at"
    t.string   "order_number"
    t.date     "confirmed_date"
    t.string   "purchase_positions_collection"
  end
<%= f.simple_fields_for :article_position_time_shifting_assignments do |builder| %>
<%= f.simple_fields_for :article_position do |builder| %>
#<ArticlePositionTimeShiftingAssignment id: 10, article_position_id: nil, time_shifting_id: 10, created_by: 1, updated_by: 1, created_at: "2012-05-23 14:57:27", updated_at: "2012-05-23 14:57:27", order_number: "", confirmed_date: nil, purchase_positions_collection: "">
accepts_nested_attributes_for :article_position_time_shifting_assignments, :reject_if => proc { |obj| obj['article_position_id'].blank? }