无法使模型验证对相关模型对正常工作

时间:2013-01-21 21:52:58

标签: ruby-on-rails ruby-on-rails-3

我正在尝试为父母和子模型实现类似于Reddit的投票功能(链接和评论,但我的情况,问题,has_many回答)。

投票功能目前适用于投票问题,但在答案时,用户只能投票给出针对特定问题的一个答案,但不会投票给任何后续问题(不像SO,它允许你投票给你想要的答案..)

我发现我的问题出现在我的Vote.rb文件中(当它被注释掉,它有效..),如下所示:

class Vote < ActiveRecord::Base
  attr_accessible :question_id, :answer_id, :up # up is a boolean used for voting

  belongs_to :user
  belongs_to :question
  belongs_to :answer 

  validates :user_id, :uniqueness => { :scope => :question_id } #this line causes the issue..

end

验证通过保证用户只能投票一次问题来解决问题,但由于我在问题的show页面中呈现答案,我的预感是user_id / {{ 1}}唯一性规则也阻碍了它为answer_ids工作。如果可能的话,我想知道我是否可以构建验证,因此它首先验证question_id / answer_id唯一性,然后验证问题/用户对..虽然我不知道该逻辑是否正确会让它发挥作用。

感谢您的帮助!


作为补充材料,这是我的控制器:

user_id

0 个答案:

没有答案