Rails 3 - 块中的自定义URL无法正常工作

时间:2011-09-01 23:05:19

标签: ruby-on-rails ruby-on-rails-3

我正在尝试使用:

<% @deal.tasks.each do |task| %>
<li id="task_<%= task.id %>">
    <span class="handle">[drag]</span>
    <%= link_to "#{task.title}", deal_task_url(:id => task.id) %>  
</li>
<% end %>

在我的路线中......

match "tasks/:id" => "tasks#show", :as => "deal_task"

所以我得到的错误是task.id是nil,我可以将task.id放在块中的任何其他位置并且它是正确的值,但是当它在deal_task_url中时它总是为零。

现在,作为确保我的路线有效的测试,并且是我想要的,我做了这个......

<%= link_to "#{task.title}", deal_task_url(:id => '1') %>

它有效,但显然每个结果都有相同的链接。

所以我的问题是两部分。

第1部分 - 为什么这不起作用

deal_task_url(:id =&gt; task.id)

第2部分 - - 如何将task.id放入deal_task_url()

提前致谢!

1 个答案:

答案 0 :(得分:1)

简单地说:

deal_task_url(task.id)