Ruby on rails 3 Rails:需要有关嵌套窗体拒绝嵌套对象但仍创建主对象的帮助吗

Ruby on rails 3 Rails:需要有关嵌套窗体拒绝嵌套对象但仍创建主对象的帮助吗,ruby-on-rails-3,model,nested-forms,Ruby On Rails 3,Model,Nested Forms,我的用户模型中有以下内容 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 class用户lambda{a | a[:role_

我的用户模型中有以下内容

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
class用户lambda{a | a[:role_id]。blank?}
终止
这正确地拒绝了
gym\u用户
模型如果
角色id
不存在,问题是它仍然创建用户,而且根本不存在
t创建
gym\u用户
。当拒绝
gym\u用户时,是否有办法使其不创建或删除用户?

添加
验证:gym\u用户,:presence=>true
到您的用户模型中

您可以添加

validates_associated :gym_users
到您的
用户
模型,并将验证从
拒绝_if
移动到
用户
模型

validates_presence_of :role_id