我的用户模型中有以下内容
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 :(得分:0)
将validates :gym_users, :presence => true
添加到您的用户模型
答案 1 :(得分:0)
您可以添加
validates_associated :gym_users
到您的User
模型并将验证从reject_if
移至GymUsers
模型
validates_presence_of :role_id