[英]How to add parameters in URL of Ruby on Rails?
我在routes.rb中这样写:
get 'app/:name&:target' => 'apps#show', :as => :app_info
我想访问“ app / myapp&mytarget”,然后转到apps_controller#show,这是haml:
link_to app_item[:name], app_info_url(app_item[:name], app_item[:target])
但它返回:
No route matches [GET] "/app/myapp&mytarget"
我在这里错过了什么?
您无需指定要在路由中接受的URL参数。 只需创建到您的controller#action的路由,例如)
get 'app/:name' => 'apps#show', :as => :app_info
并且在您的apps#show动作中,可以从params [:target]中访问URL参数,这样的URL参数可能很多,并且它们都将位于rails为您生成的params哈希中。 您无需在路由中明确提及它们。
因此,只需将参数传递到您的url帮助器中:
link_to app_item[:name], app_info_url(app_item[:name], target: app_item[:target])
在路径或网址中这样传递
app_info_url(app_item[:name], app_item[:target], :params1 => "value1", params2 => "value2"......)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.