0

我有一个模型订阅与参与者的所属关联。

订阅表单使用 fields_for 构建关联的参与者字段。

表单中还有一个名为“other_person”的单选按钮。

我想要的是在 other_person 字段设置为 false 时不保存关联的参与者表(因此也不验证)。

4

1 回答 1

1

我将假设是以下示例other_person中模型的一个字段:Subscription

class Subscription < ActiveRecord::Base
  before_save :remove_empty_participant
  belongs_to :participant

  private

  def remove_empty_participant
    self.participant = nil unless self.other_person
  end
end

如果它不是Subscription模型的字段,则必须删除控制器操作中的属性:

class SubscriptionsController < ActionController

  def create
    params[:subscription].delete(:participant) unless params[:other_person]
    # Save the subscription with your current params...
  end

end

希望能帮助到你。

于 2013-03-12T22:13:19.693 回答