Rails 3 - 嵌套路由“NoMethodError”尽管被列入耙子路线

发布于 2024-11-08 12:28:03 字数 768 浏览 0 评论 0原文

好的,我有一个像这样的嵌套路由:

resources :apps do
    resources :forms
end

在我的表单索引中,我有这个块:

<% @forms.each do |form| %>
  <tr>
    <td><%= form.app_id %></td>
    <td><%= form.title %></td>
    <td><%= link_to 'Show', app_form(@app,form) %></td>
    <td><%= link_to 'Destroy', form, :confirm => 'Are you sure?', :method => :delete %></td>
  </tr>
<% end %>
</table>

页面在 app_form 行上抛出 NoMethodError;但是我认为我正确地传递了应用程序和表单(我也尝试传递@app.id)。调用 rake 路线...甚至会显示路线:

app_form GET    /apps/:app_id/forms/:id(.:format)      {:controller=>"forms", :action=>"show"}

任何帮助将不胜感激!

Ok guys so I have a nested route like this:

resources :apps do
    resources :forms
end

In my form index I have this block:

<% @forms.each do |form| %>
  <tr>
    <td><%= form.app_id %></td>
    <td><%= form.title %></td>
    <td><%= link_to 'Show', app_form(@app,form) %></td>
    <td><%= link_to 'Destroy', form, :confirm => 'Are you sure?', :method => :delete %></td>
  </tr>
<% end %>
</table>

The page throws a NoMethodError on the app_form line; however I think I am passing in the app and form in correctly (I've also tried to pass in the @app.id). Calling rake routes... the route is even displayed:

app_form GET    /apps/:app_id/forms/:id(.:format)      {:controller=>"forms", :action=>"show"}

Any help would be greatly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

゛清羽墨安 2024-11-15 12:28:03

尝试使用 app_form_path(@app, form) (您需要将 _path 附加到路由名称)。

Try app_form_path(@app, form) instead (you need to append _path to the route name).

叹梦 2024-11-15 12:28:03

不仅是嵌套路由,对于您使用的每个路由,您都需要附加 _path 或 _url 以及路由名称。
所以在这里尝试 app_form_path(@app,form) 或 app_form_url(@app,form)

Not only nested routes,For each routes you using, You need to append _path or _url with route name.
So here juz try app_form_path(@app,form) or app_form_url(@app,form)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文