Rails 4动态路由

时间:2014-12-10 09:18:26

标签: ruby-on-rails-4 rails-routing

我有一个网站,显示有关夏季/冬季运动的内容。因此,内容被分为几类,比如路线/滑雪去与滑雪有关的内容,/帆板运动显示帆板运动内容等等。 现在,我正在设想创建一个某种类型的管理面板,我可以在其中添加以前不存在的任意类别,让我们说“单板滑雪”,这将创建一个名为/滑雪板的链接,然后显示标记为单板滑雪的内容。 / p>

所以,为了在Rails中实现这一点,最好有一个通用控制器(让我们称之为PageContentController)和routes.rb中的通用路由配置,如:match ':controller(/:action(/:id(.:format)))',还是有更好的方法动态创建新路线?

感谢。

1 个答案:

答案 0 :(得分:1)

我认为在寻找动态路由(动态创建路由)时,你过分考虑了这一点。

您可以创建一个名为Sport(rails g scaffold sport)的资源,这将为您创建:

  • 运动模特
  • 运动控制器
  • 与体育管理​​相关的观点(索引,创建,阅读,更新,删除)
  • 在routes.rb中添加一个条目,例如resources:sports(这将为CRUD创建所有必要的路由)

从那里,您可以动态创建在/ sports / index上可访问的索引页面上显示所有体育赛事 在/ sports /:id显示运动或使用友好的网址显示运动名称而不是ID。