したがって、jQuery/AJAX と画像を使用して投票をトリガーしたいと考えています。つまり、親指を立てたアイコンと親指を下げたアイコンがあります。
gem をセットアップし、rake db:migrate を実行して、すべてを整理しました。
しかし、アプリで投票を実行する方法がわかりません。
私のモデルでは、私のモデルである に 1 つのモデルを使用しacts_as_voter
ていClient
ます。acts_as_votable
私のモデルであるUpload
モデル。したがって、クライアントはアップロードに賛成票または反対票を投じます。カルマも何もないので、それは文字通り親指アップであり、それ自体は「投票」ではありません。これは、アップロードごとの各クライアントからの単純な賛成/反対です。
私の見解では、これが私が投票を実行したい方法です:
$("div#upvote img").live("click", compv.comments.upvote);
upvote
この Rails 3 gem を使用して実際にアクションを実装するにはどうすればよいですか?
編集:関数compv.comments.upvote
が現在の形で何をするかを知りたい場合は、ここで見ることができます:
compv.comments.upvote = function(event){
var uploaderID = compv.comments.getUploadID(event.target);
$.ajax({
url: '/uploads/'+uploaderID+'/upvote.js',
success: function(data, status, xhr){
var uploadElement = $("li[data-upload-id="+uploaderID+"]");
uploadElement.attr('data-upload-upvote', parseInt(uploadElement.attr('data-upload-upvote'))+1);
var imgElement = uploadElement.find("div.image-wrapper > img");
var img_opacity = imgElement.css('opacity');
if(img_opacity < 1 ) {
imgElement.fadeTo(600, 1, function() {
});
}
imgElement.removeClass("downvoted");
imgElement.addClass("upvoted");
}
});
};
ただし、この宝石を正しく機能させるには、これを変更する必要がある可能性が高いことを十分に認識しています。これは、この gem でできることを実行しようとした私のバージョンにすぎません (ただし、この gem からの実装が望ましいと思います)。