ruby-on-rails – getScript jQuery路径不起作用/ Ruby on Rails

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – getScript jQuery路径不起作用/ Ruby on Rails前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个jQuery函数,在列表项双击后调用.

应用程序/资产/ Java脚本/瓦/ tile.js

$('#list > li').dblclick(function(){
  // styling
  $(this).toggleClass('liked');

  // pass ID to controller
  var movie_id = $(this).attr("data-id");
  $.getScript("/likes.js");
});

接下来将一些新格式应用于所述项目,我的主要目标是从我喜欢的控制器中创建数据库条目.在这个Railscast中,来自其注释控制器的索引操作将通过这个简单的行调用.

$.getScript("/comments.js");

另外,一些JavaScript从index.js.erb文件调用.

理解Railscasts中的示例代码的第一个问题是它们如何定义动作.如果我想从我的likes_controller调用动作createLike,我该如何调用它?

其次,到目前为止我的尝试都失败了,因为JavaScript文件都没有加载,并且动作也没有被调用.

不知何故,我感觉到我已经搞砸了路径.我应该在哪里找到应该使用getScript函数调用的JavaScript文件

应用程序/资产/ JavaScript的/喜欢/ 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

解决方法

我相信执行问题可以通过移动index.js.erb来解决

应用程序/资产/ JavaScript的/喜欢/ index.js.erb的

应用程序/视图/喜欢

这是Rails查找要呈现的模板的位置(您的脚本不应由资产管道提供). Rails通过约定解决了这个问题 – 您的应用程序自动路由/喜欢索引操作.

如果您想要更丰富的路线,请使用Rails routing guide生成新路线并将其与Likes控制器中的create_likes操作相匹配.然后,$.getScript( “/ create_likes.js”)会知道在哪里看

猜你在找的Ruby相关文章