7

リスト項目をダブルクリックした後に呼び出される 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 のサンプル コードを理解する上での最初の問題は、アクションの定義方法です。自分からアクションを呼び出したい場合createLikelikes_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
4

5 に答える 5