リスト項目をダブルクリックした後に呼び出される jQuery 関数があります。
アプリ/アセット/javascripts/タイル/タイル.js
$('#list > li').dblclick(function(){
// styling
$(this).toggleClass('liked');
// pass ID to controller
var movie_id = $(this).attr("data-id");
$.getScript("/likes.js");
});
上記の項目にいくつかの新しいフォーマットを適用することの次に、私の主な目標は、like
コントローラーからデータベース エントリを作成することです。このRailscastでは、コントローラーからのindex
アクションcomments
がこの単純な行で呼び出されます。
$.getScript("/comments.js");
さらに、一部の JavaScript はindex.js.erb
ファイルから呼び出されます。
Railscasts のサンプル コードを理解する上での最初の問題は、アクションの定義方法です。自分からアクションを呼び出したい場合createLike
、likes_controller
どのように呼び出しますか?
次に、JavaScript ファイルがロードされず、アクションも呼び出されないため、これまでの試みはすべて失敗しました。
どういうわけか、私はパスを台無しにしたと感じています。関数で呼び出される JavaScript ファイルはどこにありgetScript
ますか?
ファイル
app/assets/javascripts/likes/index.js.erb
console.log("Test");
アプリ/コントローラー/likes_controller.rb
class LikesController < ApplicationController
protect_from_forgery
def index
Like.create(:user_id => current_user.id, :item_id => params[:id])
end
end