我有一个Movie模型和一个Person模型。
电影模型应该有演员、作家和制片人组。
演员、作家和制片人是一群人,都来自同一个Person模型。
对此进行建模的最佳方法是什么?
谢谢。
编辑:每个人都可以同时是演员、作家和制片人。它们都具有相同的属性。
编辑2:我想做的是这样的:
Class Movie < ActiveRecord::Base
attr_accessible :name, :image, :information, :duration, :director, etc...
has_many :persons, as: :writers <-- (IDK if this is possible)
has_many :persons, as: :producers <-- (IDK if this is possible)
has_many :persons, as: :actors <-- (IDK if this is possible)
end
Class Person < ActiveRecord::Base
attr_accessible :birthdate, :birthplace, :height, :information, :name, etc..
end
并在电影模型中创建组,所以我可以这样称呼它们:
@writers = @movie.writers
@actors = @movie.actors
@producers = @movie.producers
全部由 Person 对象组成,可以是 3 种类型中的任何一种。
一个人可以参与许多其他电影。