1

我有一个配置文件模型,它嵌入了一个 kids_type 和 parent_type。正如您在下面的代码中看到的那样。

我想验证 kids_type 子模型。使用 validates_associated 后,它对我来说工作正常。但问题是,它验证 kids_type 模型 [#, @messages=**{:kids_type=>["is invalid"]}>**] ,而不是我期待字段明智错误,因为我需要显示内联错误...

class Profile
  include Mongoid::Document
  validates_associated :kids_type  
  # PROFILE TYPE KIDS & PARENT
  embeds_one :kids_type, :class_name => "ProfileKidsType"
  embeds_one :parent_type, :class_name => "ProfileParentType"
end

class ProfileType
  include Mongoid::Document

  #COMMON FILES FOR KIDS AND PARENT
  field :fname, :type => String
  field :lname, :type => String

  validates_presence_of :fname, :message => "ERROR: First name is required"
  validates_presence_of :lname, :message => "ERROR: Last name is required"
end

class ProfileParentType < ProfileType
  include Mongoid::Document

  field :email, :type => String  
  embedded_in :profile, :inverse_of => :parent_type
end

class ProfileKidsType < ProfileType
  include Mongoid::Document

  field :nickname, :type => String
  embedded_in :profile, :inverse_of => :kids_type
end

任何建议将不胜感激,在此先感谢。

4

1 回答 1

1

在这里试试这个 @profile 是 Profile 的实例,它会为你提供所有错误字段明智的孩子类型

@profile.kids_type.errors
于 2012-07-06T08:10:03.710 回答