论坛首页 Ruby版 rails

[问题]关于请求的路由

浏览 910 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2007-05-13 关键字: routing
开发一个ROR网站,会有管理后台,我都是通过Admin::XXXController实现的,现在我希望这些负责后台管理的Controllers统一继承一个叫AdminController的Controller,然后在AdminController中加入访问控制等方法,即为一个BaseController,但是所有的后台管理url都是/admin/xxx,例如/admin/item/list或/admin/category/list,这样的话,按照默认的转发规则,/admin/item/list会转发到AdminController,会报Unknown action错。除了把AdminController改成其它名字这种方法外,可不可以通过在config/routes.rb中设置,让/admin/*不转发给AdminController?
   
最后更新时间:2007-05-14
不要那个“:controller/:action/:id"的缺省路由。
   
0 请登录后投票
最后更新时间:2007-05-14
参考 agile development with rails 1st edition,
中的 路由部分,可以解决你的问题。
   
0 请登录后投票
最后更新时间:2007-05-14
yananay 写道
参考 agile development with rails 1st edition,
中的 路由部分,可以解决你的问题。


多谢,我已经解决了问题,在默认的路由前插入:

map.connect 'admin/:controller/:action'
map.connect 'admin/:controller/:action/:id'

不过有个问题,如果只写 map.connect 'admin/:controller/:action/:id' ,那/admin/item/list也不会被解析,但是默认的 map.connect ':controller/:action/:id' 却可以解析/item/list,请问这是为什么呢?
   
0 请登录后投票
最后更新时间:2007-05-15
把 routes.rb 和 url_for 部分贴上来看看?
   
0 请登录后投票
论坛首页 Ruby版 rails

跳转论坛:
JavaEye推荐