私はphpからrails3に移行しましたが、それでも良い決断だったと思います。とにかく私はいくつかのモデルを持っています:
users
questions
answers
question_id
votes
user_id
answer_id
ユーザー向けモデル:
has_many :questions
has_many :votes
質問のモデル:
belongs_to :user
has_many :answers, :dependent => :destroy
accepts_nested_attributes_for :answers, :reject_if => lambda { |a| a[:text].blank? }, :allow_destroy => true
回答のモデル:
belongs_to :question
has_many :users, :through => :votes, :dependent => :destroy
has_many :votes
投票のモデル:
belongs_to :answer
belongs_to :user
さて、私の質問です。ユーザーが回答に投票したら、そのユーザーとその特定の質問への投票を終了する必要があります...
プロジェクトの残りの部分では、ユーザーと承認にdeviseとcancanを使用しています...
私の見解では、次のようになります。
<% unless current_user.question_answered.include? question %>
次に、投票ボタンをレンダリングするスクリプトを実行します...
私の投票モデルでは、answer_idとuser_idがあり、current_user.idと現在のquestion.idがわかっているので、vote.user_idに現在のquestion.idにあるvote.answer_idがある場合、ボタン作成スクリプト...aarghhしかし、これを機能させる方法...?
よろしくお願いします!そしてよろしく、Thijs