【发布时间】:2015-11-04 09:15:23
【问题描述】:
我在使用以下代码通过 Rails 中的 link_to 传递参数时遇到问题:
<%= link_to new_registration_path, {:workshop => @workshop.id } do %>
当我窥探控制器时,:workshop 没有包含在参数中(只有控制器和动作)。
这是一个强大的参数问题吗?
【问题讨论】:
标签: ruby-on-rails
我在使用以下代码通过 Rails 中的 link_to 传递参数时遇到问题:
<%= link_to new_registration_path, {:workshop => @workshop.id } do %>
当我窥探控制器时,:workshop 没有包含在参数中(只有控制器和动作)。
这是一个强大的参数问题吗?
【问题讨论】:
标签: ruby-on-rails
workshop 参数必须传递给 new_registration_path 助手,而不是传递给 link_to,如下所示:
<%= link_to new_registration_path(workshop: @workshop.id) do %>
如果您希望 URL 类似于 /something/123 而不是 /something?workshop=123,您可以更改在 routes.rb 上定义路由的方式:
get something/:workshop
然后您可以将workshop: 123 传递给 URL 助手。
【讨论】: