【发布时间】:2013-04-28 21:32:50
【问题描述】:
我有 3 个模型,用户、游戏和玩家。用户和游戏之间基本上是多对多的关系,玩家作为连接表,除了玩家有其他信息,所以它有自己的模型。
玩家需要一个独特的游戏ID和用户ID组合,所以我试着在玩家中说:
validates_uniqueness_of :user_id, :scope => :game_id
然后在我的规范中,我说(使用应该匹配器):
it { should validate_uniqueness_of(:user_id).scoped_to(:game_id)}
这里是玩家定义的关系:
belongs_to :game, :inverse_of => :players
belongs_to :user, :inverse_of => :players
但我在该规范上收到 ActiveRecord::statementinvalid 错误
ActiveRecord::StatementInvalid: Mysql2::Error: Column 'game_id' cannot be null: INSERT INTO `players` ETC...
知道出了什么问题吗?
【问题讨论】:
标签: ruby-on-rails rspec shoulda