カテゴリモデルがあります
default_scope :order => 'display_order asc'
has_many :resources, :dependent => :destroy
# == Schema Information
#
# Table name: categories
#
# id :integer(4) not null, primary key
# name :string(255)
# description :string(255)
# created_at :datetime not null
# updated_at :datetime not null
#
私はリソースモデルを持っています:
belongs_to :category
# belongs_to :submitter, :class_name => 'User', :foreign_key => "submitter_id"
has_and_belongs_to_many :filetypes
has_many :users, :through => :kits
has_many :kits
belongs_to :submitter, class_name: "User"
belongs_to :author
==スキーマ情報
#
# Table name: resources
#
# id :integer not null, primary key
# title :string(255)
# url :string(255)
# description :string(255)
# price :decimal(, )
# created_at :datetime not null
# updated_at :datetime not null
# category_id :integer
# image_file_name :string(255)
# image_content_type :string(255)
# image_file_size :integer
# image_updated_at :datetime
# status :string(255)
# submitter_id :integer
# author_id :integer
#
クライアントは、カテゴリを作成できることを望んでいますが、カテゴリに応じてリソースに異なる属性を割り当てます。
例:作成されたカテゴリ:'Books'たとえば、リソースモデルに保存されたフィールド'author'が必要です。
作成されたカテゴリ:'会議'たとえば、リソースモデルに'場所'、'日付'のフィールドを保存したいと考えています。
これをどのようにモデル化して、動的で長期的に維持しやすいようにすることができますか?