为具有多个关联的模型创建迁移

时间:2015-09-13 04:55:36

标签: ruby-on-rails

我对如何为具有多个关联到同一个表的模型创建迁移感到有些困惑。

class Kill < ActiveRecord::Base
  belongs_to :player, :class_name => 'Player'
  belongs_to :killed, :class_name => 'Player'
end

class Player < ActiveRecord::Base
  belongs_to :team
  has_many :kills, :class_name => 'Kill', :foreign_key => 'kills_id'
  has_many :killed_by, :class_name => 'Kill', :foreign_key => 'killed_by_id'
end

这个设置是否正确?我想为此创建一个迁移,但我一直在使用

rails g migration Player kill:reference killed_by:reference

过去对于类似的事情,但似乎因为kill不能直接引用类名,所以它不起作用。我该如何为此创建迁移?

2 个答案:

答案 0 :(得分:0)

以下应该有效

rails g migration add_kills_id_and_kill_by_id_to_players kills_id:integer kill_by_id:integer

答案 1 :(得分:0)

试试这个

 rails g migration AddKillIdAndKillByIdToPlayers kill:references kill_by:references