Javascript rails xhr.send((options.hasContent&;options.data)| | null);错误

Javascript rails xhr.send((options.hasContent&;options.data)| | null);错误,javascript,jquery,ruby-on-rails,ruby,ajax,Javascript,Jquery,Ruby On Rails,Ruby,Ajax,我试着为每个食谱做一个类似的按钮 但如果我像浏览器说的那样点击按钮 xhr.send((options.hasContent&&options.data)| null) 返回此错误 我不知道为什么会发生这个错误 这是我在rails中的代码 application.js function like(id){ $.ajax({ url:"/like/" + id, type:"POST", dataType:"json", su

我试着为每个食谱做一个类似的按钮

但如果我像浏览器说的那样点击按钮

xhr.send((options.hasContent&&options.data)| null)

返回此错误

我不知道为什么会发生这个错误

这是我在rails中的代码

application.js

function like(id){
    $.ajax({
        url:"/like/" + id,
        type:"POST",
        dataType:"json",
        success: function(data){
            if(data.result){
                $("#countlike").html("likes " + data.count);
                // $("#count").removeAttr('onclick');
                // $("#count").attr('disabled', 'disabled');
            }
        }
    });
}
route.rb

post '/like/:id'=>'recipes#like' 
  def like
      likes = Recipe.find(params[:id]).likes           
      result = likes.create 
      render json:{result: result, count: likes.count}
  end
views/recipes/show.html.erb

<p>
  <a id = "countlike" onclick="like(<%=@recipe.id%>)">Like it</a>
</p>

它在其他项目中正常工作相同的代码

看起来您在发布ajax请求时丢失了数据属性,这可能会引发错误

function like(id){
    $.ajax({
        url:"/like/" + id,
        type:"POST",
        dataType:"json",
        data: my_data, // <--- HERE
        success: function(data){
            if(data.result){
                $("#countlike").html("likes " + data.count);
                // $("#count").removeAttr('onclick');
                // $("#count").attr('disabled', 'disabled');
            }
        }
    });
}
类函数(id){
$.ajax({
url:“/like/”+id,
类型:“POST”,
数据类型:“json”,

数据:my_data,//看起来您在发布可能引发错误的ajax请求时缺少数据属性

function like(id){
    $.ajax({
        url:"/like/" + id,
        type:"POST",
        dataType:"json",
        data: my_data, // <--- HERE
        success: function(data){
            if(data.result){
                $("#countlike").html("likes " + data.count);
                // $("#count").removeAttr('onclick');
                // $("#count").attr('disabled', 'disabled');
            }
        }
    });
}
类函数(id){
$.ajax({
url:“/like/”+id,
类型:“POST”,
数据类型:“json”,

data:my_data,//检查Rails日志,应该有500错误的完整跟踪,这将告诉您错误在哪里problem@a.barbieri它说RecipesController的处理类似于JSON参数:{“id”=>“1”}无法验证CSRF token Authenticity您的视图中是否有
?@a.barbieri否!我可以在视图中插入该代码吗?这可能是一个很好的起点。它应该放在
标题中
。检查Rails日志,应该有500错误的完整跟踪,这将告诉您错误在哪里problem@a.barbieri它说的是RecipesController#类似于JSON参数:{“id”=>“1”}无法验证CSRF令牌身份验证您的视图中是否有
?@a.barbieri否!我可以在视图中插入该代码吗?这可能是一个很好的起点。它应该放在
标题中。