Ruby on rails 创建后,属于并验证是否存在

Ruby on rails 创建后,属于并验证是否存在,ruby-on-rails,validation,activerecord,Ruby On Rails,Validation,Activerecord,我有以下两个类,其中类A在创建后初始化B。不幸的是,这不起作用,并且由于违反了验证的存在性,B的创建失败: class A < ActiveRecord::Base has_many :bs after_create :after_create_hook def after_create_hook B.create(:a => self) end end class B < ActiveRecord::Base belongs_to :a

我有以下两个类,其中类A在创建后初始化B。不幸的是,这不起作用,并且由于违反了验证的存在性,B的创建失败:

class A < ActiveRecord::Base
  has_many :bs

  after_create :after_create_hook

  def after_create_hook
    B.create(:a => self)
  end
end

class B < ActiveRecord::Base
  belongs_to :a
  validates_presence_of :a
end
class Aself)
结束
结束
B类
创建A时,会创建A,但不会创建B。

我刚刚发现:

这里的错误是,对一个实例进行验证。由于这只是一个外键,验证必须检查:

validates_presence_of :a_id
现在一切正常了