Ruby on rails 在Rails中进行RESTful删除后,是否有方法重定向到特定页面?
假设我有一个消息资源。在html的某个地方,我有:Ruby on rails 在Rails中进行RESTful删除后,是否有方法重定向到特定页面?,ruby-on-rails,rest,Ruby On Rails,Rest,假设我有一个消息资源。在html的某个地方,我有: <%= link_to("Delete", message, :title => 'Delete', :confirm => 'Are you sure?', :method => :delete )%> 'Delete',:confirm=>“确定吗?”, :method=>:delete)%%> 在我删除它之后,它会将我重定向到列出所有消息的页面。有没有办法重定向到我在删除后指定的页面?在控制器中
<%= link_to("Delete", message, :title => 'Delete', :confirm => 'Are you sure?',
:method => :delete )%>
'Delete',:confirm=>“确定吗?”,
:method=>:delete)%%>
在我删除它之后,它会将我重定向到列出所有消息的页面。有没有办法重定向到我在删除后指定的页面?在控制器中:
def delete
Item.find(params[:id]).destroy
redirect_to :action => "index"
end
要重定向到上一个url,请使用:
redirect_to :back
如果您能够很好地学习如何阅读api文档,那么一旦掌握了这些文档的窍门,它们将非常有用。如果您正在使用Rails的资源,那么实际上应该处理的是
销毁
操作
def destroy
Item.find(params[:id]).destroy
redirect_to other_specified_path
end
如果您查看API文档,就会发现ActiveRecord::Base#delete
和ActiveRecord::Base#destroy
方法之间存在巨大差异。只有当你真正理解为什么要使用delete时才使用它。我只需要这个
def delete
Item.destroy
redirect_to :back
end
如果我想返回到当前页面,我会使用此选项。具体地说,将第3行更改为指向您想要的位置。