代号(3.0.10)如下:
User < AR
has_many :providers
Provider < AR
belongs_to :user
validates_presence_of :user
user = User.new
user.providers.build
# so both models not yet saved but associated with each other
user.valid?
=> false
user.errors
=> {:providers=>["is invalid"]}
user.providers.first.errors
=> {:user_id=>["can t be blank"]}
为什么提供商不能看到它有一个尚未保存的连带用户模式? 或者换句话说,我如何处理这个模式,让验证工作仍然存在? 或者我做错了什么?
请注意,我正在寻找一个干净的解决方案,因此建议在验证回馈供应商模型之前将用户模型保存到数据库,这是不允许的。