Ruby on rails 如何在创建子模型期间验证父模型属性';谁的目标?

Ruby on rails 如何在创建子模型期间验证父模型属性';谁的目标?,ruby-on-rails,Ruby On Rails,我有一个父模型(用户),具有可选字段-名字、姓氏和必填字段-电子邮件和密码。我有一个子模型(预订),它“属于”于“用户”并“接受:用户的嵌套属性”。我的问题是,无论何时创建booking对象,我都需要验证正在创建/更新的用户的名字和姓氏是否存在。基本上,创建预订对象时,用户需要输入名字和姓氏。我在许多其他地方使用了“用户”模型作为父模型,但我不想在“用户”模型中添加验证。我希望在“预订”模型中进行验证。 如何实现这一点?如果使用validates\u associated,它将验证关联的模型 c

我有一个父模型(用户),具有可选字段-名字、姓氏和必填字段-电子邮件和密码。我有一个子模型(预订),它“属于”于“用户”并“接受:用户的嵌套属性”。我的问题是,无论何时创建booking对象,我都需要验证正在创建/更新的用户的名字和姓氏是否存在。基本上,创建预订对象时,用户需要输入名字和姓氏。我在许多其他地方使用了“用户”模型作为父模型,但我不想在“用户”模型中添加验证。我希望在“预订”模型中进行验证。
如何实现这一点?

如果使用validates\u associated,它将验证关联的模型

class Booking
  belongs_to :user

  validates_associated :user
end

额外积分:在错误消息中获得比“用户无效”更多的信息。

thanx用于帮助,但此验证无法帮助我。thanx用于帮助,但此验证无法帮助我。当我添加'validates_associated:user'时,它为我接受'user'值的表单提供ActionView::Template::Error(未定义的方法'validators_on')。我还尝试使用“accepts_nested_attributes_for:user,:reject_if=>proc{u | u | u['first_name'].blank?}”但这也不起作用。看起来您的用户类中的某些代码不好。您可以发布您的用户类(验证方法),也可以尝试删除它们,直到找到失败的验证程序。用户{has_many:feedbacks}反馈{belient_to:user,接受_嵌套的_attributes_for:user}。用户(名字、姓氏、电子邮件、*密码)。反馈(*评论)。”字段r为必填字段。反馈表接受名字、姓氏、电子邮件和评论。