【发布时间】:2013-07-18 19:28:39
【问题描述】:
我有一个 jQuery 函数,它在双击列表项后调用。
app/assets/javascripts/tile/tile.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 中,来自他们的comments 控制器的index 操作被这个简单的行调用。
$.getScript("/comments.js");
另外,一些 JavaScript 会从 index.js.erb 文件中调用。
我在理解 Railscasts 的示例代码时遇到的第一个问题是它们如何定义动作。如果我想从我的likes_controller 调用操作createLike,我该怎么称呼它?
其次,到目前为止,我的尝试都失败了,因为 JavaScript 文件没有加载并且操作也没有被调用。
不知何故,我感觉到我弄乱了路径。我应该在哪里找到应该使用 getScript 函数调用的 JavaScript 文件?
文件
app/assets/javascripts/likes/index.js.erb
console.log("Test");
app/controllers/likes_controller.rb
class LikesController < ApplicationController
protect_from_forgery
def index
Like.create(:user_id => current_user.id, :item_id => params[:id])
end
end
【问题讨论】:
-
我不确定你在问什么...你想使用 AJAX 调用来发送\接收来自服务器的信息吗?
-
直到星期四我才能尝试你所有的好建议...谢谢你的帮助!!
标签: ruby-on-rails ruby ruby-on-rails-3 jquery getscript