Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript RAILS上的AJAX-Can';t删除后更新书签符号,错误500_Javascript_Ruby On Rails_Ruby_Ajax - Fatal编程技术网

Javascript RAILS上的AJAX-Can';t删除后更新书签符号,错误500

Javascript RAILS上的AJAX-Can';t删除后更新书签符号,错误500,javascript,ruby-on-rails,ruby,ajax,Javascript,Ruby On Rails,Ruby,Ajax,因此,书签实际上正在被销毁。问题是控制台抛出一个错误500,并且书签没有被取消选择。当我更新页面时确实会发生这种情况,所以它实际上被破坏了,但是AJAX请求由于某种原因没有得到满足。这是我的密码: 书签控制器: def destroy @bookmark = Bookmark.find(params[:id]) @recommendation = Recommendation.find(@bookmark.recommendation_id) if @bookmark.destroy r

因此,书签实际上正在被销毁。问题是控制台抛出一个错误500,并且书签没有被取消选择。当我更新页面时确实会发生这种情况,所以它实际上被破坏了,但是AJAX请求由于某种原因没有得到满足。这是我的密码:

书签控制器:

  def destroy
@bookmark = Bookmark.find(params[:id])
@recommendation = Recommendation.find(@bookmark.recommendation_id)
if @bookmark.destroy
  respond_to do |format|
    format.html { redirect_to recommendation_path(@recommendation) }
    format.js  # <-- will render `app/views/reviews/create.js.erb`
  end
else
  flash[:notice] = "Couldn't delete bookmark"
  redirect_back(fallback_location: root_path)
  return
end
Destroy.js.erb:

function refreshForm2() {
  var els = document.querySelector("a[href='/bookmarks/<%=@bookmark.id%>']");
  els.setAttribute("data-method", "post");
  els.setAttribute("href", "/recommendations/<%= recommendation.id %>/bookmarks");
  els.querySelector("i").setAttribute("class", "far fa-bookmark fa-xs")
}

refreshForm2();
函数refreshForm2(){
var els=document.querySelector(“a[href='/bookmarks/']”);
els.setAttribute(“数据方法”、“post”);
els.setAttribute(“href”,“/recommendations//bookmarks”);
els.querySelector(“i”).setAttribute(“类”、“远fa书签fa xs”)
}
refreshForm2();
错误是:

应用程序-852f66c6902b94f224b15c5a88c6c45599d9e733ce132ce9a28ec6a092031d74。js:216 删除500(内部服务器错误)


我在这里真的迷路了。我做错了什么?“创建”功能非常好,将书签图标从未填充更新为已填充。

这实际上是一个非常愚蠢的错误,感谢@Yurii提供日志提示。我真的是新手,甚至不知道如何检查,哈哈

您可以将日志级别更改为调试。检查
config.log\u level=:info
config/environments/development.rb中的行。并提供更详细的日志输出
function refreshForm2() {
  var els = document.querySelector("a[href='/bookmarks/<%=@bookmark.id%>']");
  els.setAttribute("data-method", "post");
  els.setAttribute("href", "/recommendations/<%= recommendation.id %>/bookmarks");
  els.querySelector("i").setAttribute("class", "far fa-bookmark fa-xs")
}

refreshForm2();