我正在尝试在我的网站上进行一些自定义路由,但是在一个非常愚蠢的问题上被困了2天.我有以下路由配置:
Router::connect('/your-solution/add-comment/*', array('controller' => 'comments', 'action' => 'add'));
Router::connect('/admin/your-solution/add-comment/*', array('controller' => 'comments', 'action' => 'add', 'admin' => true));
Run Code Online (Sandbox Code Playgroud)
问题是当我尝试加载使用第二条路由格式化的URL时,它会给我找不到404.第一条规则很好.
对于这两个规则,我有一个单独的元素,其中包含一个表单,并指向在相应规则之后格式化的URL.这两个操作的唯一参数是解决方案ID,它在通配符中"包含".
可能是什么问题?非常感谢您的帮助!
编辑:
我发现了另一种奇怪的行为.当我访问时/admin/your-solution/add-comment/3,它会转到该操作.但是,如果我向该链接提交表单,它会显示一个空白页面,Firebug会通知我该页面未找到.很奇怪...另外,我有一个类似的路线来编辑评论.加载编辑表单并保存表单工作...
小智 6
你好吗?
为了确切了解它为什么不起作用,请转到/app/config/core.php并寻找此行:
Configure::write('debug', 2);
Run Code Online (Sandbox Code Playgroud)
并确保将值设置为"2".这样,它将不再给你404错误,但实际问题,因为在生产模式(调试设置为0),所有错误都被404错误掩盖.
让我知道!
干杯!
| 归档时间: |
|
| 查看次数: |
7636 次 |
| 最近记录: |