を二つの関連モデル(STI)との間に、ユーザーの選択肢を与える私のモデルです:Railsのモデリング - 同じ形式でここ
class BillingProfile < ActiveRecord::Base
belongs_to :student
attr_accessible :cost
end
class PerEventBillingProfile < BillingProfile
belongs_to :event_category
end
class FlatFeeBillingProfile < BillingProfile
attr_accessible :interval, :frequency
end
学生は、両方のタイプの多くの課金プロファイルを持つことができます。私が望むものは、学生がPerEventBillingProfileとFlatFeeBillingProfileの作成を選択できるラジオボタンです。イベントごとのラジオが選択されると、PerEventBillingProfileのフィールドが表示され、その逆もあります。このモデルの設定で起こるようにするには、私は次のようにしなければならないようです。
class Student < ActiveRecord::Base
has_many :per_event_billing_profiles
has_many :flat_fee_billing_profiles
accepts_nested_attributes_for :per_event_billing_profiles
accepts_nested_attributes_for :flat_fee_billing_profiles
end
これはもっと簡単な感じです。私が欲しいものを手に入れるより簡単な方法はありますか?私はこれをすべて1つのモデルに入れて、列にNULL値をたくさん入れてもいいと思っていますが、どちらも気に入らないのです。