【发布时间】:2012-08-15 08:25:35
【问题描述】:
除了 id 之外,我如何说服 rails 在 url 中使用记录属性?
例如,考虑一个带有属性pub_date 的类Publication,最好有一个类似的url
/publications/#{pub_date.year}/#{id}
虽然我可以使用to_param 来更改“id”部分,但我似乎记得生成带有“/”的参数是个坏主意。所以使用类似的东西
def to_param
"#{pub_data.year}/#{super}"
end
似乎不可行。此外,使用其他 URL 模板似乎是不可能的,例如如果我想在 url 的另一部分使用该属性,例如:
/#{pub_date.year}/publications/#{id}
我可以定义匹配的路由,例如
match "/xxx/:foo/:bar" => "ctrlr#act"
但我不确定如何使用自动生成的 _url 和 _path 助手。
【问题讨论】:
-
这篇文章有你需要的答案:stackoverflow.com/questions/2263488/…
标签: ruby-on-rails ruby ruby-on-rails-3 clean-urls