请帮我弄清楚include的权利。Rails发现混淆
Poem
has_many :awards
has_one :overall_ranking
Award
belongs_to :poem
# before
# has_one :overall_ranking, :foreign_key => :poem_id
## SOLUTION
# after
has_one :overall_ranking, :foreign_key => :poem_id, :primary_key => :poem_id
OverallRanking
belongs_to :poem
update: Award.all(:include => [:overall_ranking]) # works with SOLUTION
请注意,我不能依赖于Poem#id
因为用户可以删除这首诗,但如果它是一个胜利者,我做内Award
副本,所以我必须仅仅依靠Award#poem_id
谢谢!
更新我的帖子,请参见下文。 – dombesz 2010-06-30 11:15:25