我是真的新的 Ruby on Rails 3和我正在一个简单的国际象棋游戏应用程序。我打算创建以下型号:RoR3模型协会(游戏belongs_to两名球员)
rails g model Player name:string
rails g model Game player_id_white:int player_id_black:int title:string
rails g model Comment player_id:int game_id:int comment_data:text
rails g model Move game_id:int player_id:int move_data:string
假设它们都具有:ID:INT:primary_key,created_at:日期时间,的updated_at:日期时间。我也省略了'password_hash'等字段。我的问题是与协会,而不是我需要什么领域,使应用程序的工作。
class Player < ActiveRecord::Base
has_many :games #some have player_id_black, others as player_id_white
has_many :comments
has_many :moves
end
class Game < ActiveRecord::Base
has_many :comments
has_many: moves
**belongs_to :player1??**
**belongs_to :player2??**
end
class Comment < ActiveRecord::Base
belongs_to :player
belongs_to :game
end
class Move < ActiveRecord::Base
belongs_to :player
belongs_to :game
end
问题:
1)我想将游戏链接到两名球员,我怎么可以指定关系?
2)我必须在'rails generate model'中指定像game_id:int这样的东西,或者当我执行关系时(belongs_to:player,has_many:games),它是隐含的吗?
谢谢!
我喜欢你的命名更好!尼斯。 –
嗨科迪,我编辑的帖子也包括一个不同的迁移选项,对不起,忘了把它包括在我原来的文章:) – roboles
现在,是否有可能做@ player.games?如何设置? –