问题描述
|
给定以下内容:
<%= link_to \"Add\",group_request_path(gr),:confirm => \"Are you sure?\",:method=> :put,:remote => true %>
<%= link_to \"Ignore\",:remote => true %>
如何在上面的link_to
\中通过添加或忽略来传递决策参数?是否可以通过link_to以某种方式添加URL参数?我不想使用表格。
解决方法
*_path
助手接受一个选项的哈希值作为查询字符串追加到路径中。
在您的示例中,假设group_request_path(gr)
输出类似/group_requests/123
的内容,则可以使用以下添加/忽略操作添加查询字符串:
group_request_path(gr,:action => \'add\') # /groups_requests/123?action=add
要么
group_request_path(gr,:add => 1) # /groups_requests/123?add=1
但是,这可能不是正确的解决方法。看来您可能应该在控制器中执行不同的操作,并且要执行特定于添加或忽略的路由。您必须在config/routes.rb
中添加以下内容:
put \'group_requests/:id/add\' => \'groups_requests#add\',:as => :add_group_request
put \'group_requests/:id/ignore\' => \'groups_requests#ignore\',:as => :ignore_group_request
您的链接然后变为
<%= link_to \"Add\",add_group_request_path(gr),:confirm => \"Are you sure?\",:method=> :put,:remote => true %>
<%= link_to \"Ignore\",ignore_group_request_path(gr),:remote => true %>