2011-07-05 32 views
0

我已經在我的用戶模型Rails的:與嵌套形式拒絕嵌套的對象,但還創建主要對象

class User < ActiveRecord::Base 
    has_many :gym_users 

    attr_accessible :gym_users_attributes, :gym_users 
    accepts_nested_attributes_for :gym_users, :reject_if => lambda { |a| a[:role_id].blank? } 

end 

這正確地拒絕gym_user模型如果role_id不存在以下需要幫助,問題是它仍然創建用戶,並且簡單地不創建gym_user「 」。有沒有辦法讓gym_user被拒絕時不創建或刪除用戶?

回答

0

您可以添加

validates_associated :gym_users 

User模型和移動驗證從reject_ifGymUsers模型

validates_presence_of :role_id 
0

添加validates :gym_users, :presence => true到您的用戶模型