0

我的耙子路线如下所示:

report GET /management/:id/report(.:format) report#show

在我的控制器代码中,如何访问该 :id 参数?还在.params[:id]吗?

我想我很困惑,因为这个时间 id 不是 URL 中的最后一件事,它位于 URL 的中间。

4

2 回答 2

1

是的,您可以像您说的那样访问您在路线中定义的参数:

# The route 
# /management/:id/report(.:format)
# will generate the following params:
params[:id]
params[:format] # optional

另一个例子:

match ':controller(/:action(/:id))'
# will produce the following params:
params[:controller]
params[:action] # (optional)
params[:id] # (optional)

match '/search/:search'
# will produce, in the SearchController (and views):
params[:search]
于 2013-02-27T22:33:28.517 回答
1

它是params[:id]。它只是一个命名参数,不必是 url 的最后一部分。如果它不起作用,请提供您的路线。

于 2013-02-27T22:33:55.480 回答