【问题标题】:Issue with passing params in link_to rails在 link_to rails 中传递参数的问题
【发布时间】:2015-11-04 09:15:23
【问题描述】:

我在使用以下代码通过 Rails 中的 link_to 传递参数时遇到问题:

<%= link_to new_registration_path, {:workshop => @workshop.id } do %>

当我窥探控制器时,:workshop 没有包含在参数中(只有控制器和动作)。

这是一个强大的参数问题吗?

【问题讨论】:

标签: ruby-on-rails


【解决方案1】:

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 助手。

【讨论】:

  • 啊,好吧。我希望有一种方法可以在没有查询字符串的情况下做到这一点
  • 如果您不想使用查询字符串,您可以这样做 鉴于在您的配置中/routes.rb 你有类似 get "some-registration-path/:workshop_id", to: some_controller#some_method
猜你喜欢
  • 1970-01-01
  • 2014-01-18
  • 2011-09-19
  • 1970-01-01
  • 1970-01-01
  • 2023-04-06
  • 2011-12-18
  • 1970-01-01
相关资源
最近更新 更多