Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.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
Ruby on rails 铁路";删除-销毁“;不会自动刷新项目_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 铁路";删除-销毁“;不会自动刷新项目

Ruby on rails 铁路";删除-销毁“;不会自动刷新项目,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我有一个脚手架,上面有一个删除按钮 单击“删除”按钮时,该项不会刷新以显示已删除 控制器中有基本重定向到的路径: def destroy @print = Print.find(params[:id]) @print.destroy redirect_to prints_url, :notice => "Successfully Deleted Print Order." end 我怀疑是javascript部分导致了这个问题 这是我的applicatio

我有一个脚手架,上面有一个删除按钮

单击“删除”按钮时,该项不会刷新以显示已删除

控制器中有基本重定向到的路径:

  def destroy
    @print = Print.find(params[:id])
    @print.destroy
    redirect_to prints_url, :notice => "Successfully Deleted Print Order."
  end
我怀疑是javascript部分导致了这个问题

这是我的application.js中列出的内容

//= require jquery
//= require jquery_ujs
//= require twitter/bootstrap
//= require jquery-fileupload
//= require_tree .
my application.html.erb

   <%= javascript_include_tag "application" %>

有什么问题吗

编辑:视图

<%= link_to t('.destroy', :default => t("helpers.links.destroy")),
              print,
              :method => :delete,
             :data => { :confirm => t('.confirm', :default => t("helpers.links.confirm", :default => 'Are you sure?')) },
              :class => 'btn btn-mini btn-danger',
              :remote => true %>
t(“helpers.links.destroy”),
印刷品,
:method=>:delete,
:data=>{:confirm=>t('.confirm',:default=>t(“helpers.links.confirm”,:default=>'确定吗?)},
:class=>'btn btn mini btn danger',
:remote=>true%>

您需要删除
:remote=>true
,否则页面将不会刷新。如果您想使用AJAX删除该项而不刷新页面,则需要使用Javascript自己删除该项。我建议从删除
:remote=>true
开始,直到您真正需要异步执行操作。

您在远程方法末尾重定向,这意味着返回页面的响应不会有多大帮助!相反,您应该删除重定向并添加一个带有操作名称的javascript文件(
destroy.rjs
destroy.js.erb
,具体取决于您的环境)

然后在操作结束时调用javascript文件,您可以向该文件添加刷新包含已更改项的div所需的脚本


或者,不要将此作为javascript链接,删除
:remote=>true
,它将被视为html请求,重定向将起作用。

您的删除按钮是什么样子的?是否确保将
:方法设置为
:删除
?是。方法是正确的。我会更新上面的信息。