rails保存模型对象的问题

写了这样一个例子,有两个模型类

1.member

class Member < ActiveRecord::Base
  has_one :baby
  
  validates_presence_of     :name,:email,:password,
      validates_uniqueness_of  :name,:email

 

2.baby

class Baby < ActiveRecord::Base
    belongs_to :member
  
  validates_presence_of   :name,:nickname,:sex

 

 

页面是同时提交member和baby的信息,

 

def enroll
    @member = Member.new(params[:member])   
 @baby = Baby.new(params[:baby])
    @baby.member = @member
   if @member.save
    # 注册成功,显示注册信息
   else
   #注册失败,返回注册页面
end

 

原本的想法是,member在保存的时候,检查自己的属性值是否符合要求,同时要保存与之关联的baby对象,检查属性值是否符合要求,但如果member检查没通过正常,如果是baby的信息不符合要求,则member对象保存,baby的信息没有保存,也没有提示信息,如果改成if member.save && baby.save,则在member通过检查,baby未通过检查,member对象进行了保存,然后返回了注册页面,在提交后,仍要保存member对象,则保存不成功,因为已经有相同的name值存在在member表中了,这样怎么处理啊?

你可能感兴趣的:(Rails,ActiveRecord)