Ruby on rails REST破坏链接生成问题

Ruby on rails REST破坏链接生成问题,ruby-on-rails,Ruby On Rails,我使用的是rails beta 3,我有一个名为index.html.erb的erb页面用于讨论控制器。在该页面中,我有如下链接: <%= link_to 'Delete', {:action=>'destroy', :id=>@discussion}, :confirm=>"Are you sure", :method=>'post' %> 'destroy',:id=>@discussion},:confirm=>“确定吗?”,:method=>“pos

我使用的是rails beta 3,我有一个名为index.html.erb的erb页面用于讨论控制器。在该页面中,我有如下链接:

<%= link_to 'Delete', {:action=>'destroy', :id=>@discussion}, :confirm=>"Are you sure", :method=>'post' %>
'destroy',:id=>@discussion},:confirm=>“确定吗?”,:method=>“post”%>
它应该生成一个链接来删除讨论,但是,生成的html是

<a href="/discussions/1" data-confirm="Are you sure" data-method="post" rel="nofollow">Delete</a>

始终路由到show action。我认为href应该是/discussions/destroy/1。但出于某种原因,情况并非如此

有什么想法吗?请提前感谢。

查看示例时,删除链接的格式应与示例中的相同。除了方法应该是DELETE而不是POST。但这可能是一个兼容的问题/修复,因为与GET和POST相比,DELETE方法的支持“更少”

显示操作是通过链接上的GET方法激活的,这显然不是查看链接时的情况

那么你确定你的路线设置正确吗?比如:

map.resources :discussions
编辑: 我刚刚看到你的
链接到
代码中有一个错误,
:method
应该设置为
:delete

<%= link_to 'Delete', {:action=>'destroy', :id=>@discussion}, :confirm=>"Are you sure", :method=>:delete %>
查看示例时,删除链接的形式应与示例中的相同。除了方法应该是DELETE而不是POST。但这可能是一个兼容的问题/修复,因为与GET和POST相比,DELETE方法的支持“更少”

显示操作是通过链接上的GET方法激活的,这显然不是查看链接时的情况

那么你确定你的路线设置正确吗?比如:

map.resources :discussions
编辑: 我刚刚看到你的
链接到
代码中有一个错误,
:method
应该设置为
:delete

<%= link_to 'Delete', {:action=>'destroy', :id=>@discussion}, :confirm=>"Are you sure", :method=>:delete %>

这是正确的href,但方法应该是
:delete
。您还需要确保在Rails3中正确设置了新的不引人注目的javascript方式。您可能需要添加
csrf\u meta\u标记
helper,如下链接所述:


这是正确的href,但方法应该是
:delete
。您还需要确保在Rails3中正确设置了新的不引人注目的javascript方式。您可能需要添加
csrf\u meta\u标记
helper,如下链接所述:


您可能正在使用rails 3.1

试着替换

<%= javascript_include_tag :defaults %>


您可能正在使用rails 3.1

试着替换

<%= javascript_include_tag :defaults %>


我正试图使用您描述的命名路由添加“删除”链接。不过,我的链接会转到
show
页面。不过,使用散列的“旧”方法是有效的。我正试图通过使用您描述的命名路由来添加“删除”链接。不过,我的链接会转到
show
页面。不过,使用散列的“旧”方法仍然有效。更新链接:更新链接: