我有一个模型订阅与参与者的所属关联。
订阅表单使用 fields_for 构建关联的参与者字段。
表单中还有一个名为“other_person”的单选按钮。
我想要的是在 other_person 字段设置为 false 时不保存关联的参与者表(因此也不验证)。
我有一个模型订阅与参与者的所属关联。
订阅表单使用 fields_for 构建关联的参与者字段。
表单中还有一个名为“other_person”的单选按钮。
我想要的是在 other_person 字段设置为 false 时不保存关联的参与者表(因此也不验证)。
我将假设是以下示例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
希望能帮助到你。