在 Rails 3.0 中,有没有办法让 UrlHelper 的路径方法在不显式指定父资源的情况下输出嵌套资源的路由?



假设我有这样的设置:一个区域有多个位置

路线。Rb类似于:

resources :areas, :path=>"/" do    
  resources :places, :path=>'/places' 
end

假设我有一个区域"Midwest"和一个地方"Chicago"…要访问芝加哥的位置页面,我可以这样做:

area_place_path(place, place.area)

我真的更喜欢一个能够猜测地点面积的方法(因为它是多对一关系),而不必显式地将其作为参数传递。我知道如何为我的特定需求编写一个自定义,但我想知道是否有一种我不知道的神奇Rails方式?

似乎应该有一个神奇的Rails方式,但没有。理论上可以添加这样的功能,但如果你阅读相关的Rails代码,你会发现这样的功能违反了关注点分离(UrlHelper是ActionView的一部分,但这个功能需要意识到ActiveRecord关联),所以我认为这个功能不会很快添加。我个人认为编写自己的路径帮助器没有任何害处,而且编写一个路径帮助器来提供此功能将是微不足道的。我的建议是编写自己的路径帮助程序。

相关内容

  • 没有找到相关文章

最新更新