我计划将我们当前的 cms(用 PHP 编写)移植到 Rails。所有部分都做得很好,除了一个:路由。
像大多数 cms 系统一样,我们的 cms 中的路由基于带有页面的数据库,这些页面链接到模块、控制器和操作。在这种方法中,用户可以完全自定义或指定它自己的 url。
我知道 Rails(和大多数(应用程序)框架都有在文件中定义路由的方法,但我希望这是可能的。
我们的用户应该采用的方法是:
- 添加新页面
- 选择类型(新闻、表格、产品……)
- 选择一个项目(选择应显示的表单、博客或产品)
- 输入该页面的网址
特别最后一点(4)很重要。用户应该能够将表单 A 添加到/contact-us
,并将表单 B 添加到/clients/register-as-new-client
例如
在请求中,路由器需要使用页面 url 进行数据库查询,以找出应该分派的控制器、任务和参数。