我有一个没有任何相关模型的 Controller 。该 Controller 将跨越各种模型的一些信息。我在那里有很多 Action ,它们定义了页面上的某些 View 。为该 Controller 组织路由的最佳方式是什么?
我想要的是让/dashboard/something 指向仪表板 Controller 中的任何操作。不是像新建/编辑这样的操作,而是任意操作(showstats 等)。
经过反复试验,我做了这样的事情:
map.dashboard 'dashboard/:action', :controller => 'dashboard', :action => :action
现在可以使用助手访问这些 URL:
dashboard_url('actionname')
这个方法似乎工作正常,但这是要走的路吗?我不太清楚,辅助方法名称是如何生成的。如何生成与基本 Controller “action_controller_url”中相同的助手名称?这会更通用,并使代码更一致。
提前致谢。
最佳答案
您不需要在路由中指定 :action => :action
键,这已经为您完成了。除此之外,您的操作方式很好。
您也可以将其指定为符号:dashboard_url(:actionname)
,但您已经知道了 ;)
关于ruby-on-rails - 关于路由的基本 Ruby on Rails 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2506127/