我想在我的網站上做一些自定義路由,但在一個非常愚蠢的問題上一直停留2天。我有以下的路由配置:未找到CakePHP路由URL!
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));
的問題是,當我嘗試加載使用第二路徑格式化的URL,它給了我沒有找到404。 第一條規則正常工作。
對於這兩個規則,我有一個單獨的元素,包含一個表單,並指向格式化後的各自的規則。這兩個操作的唯一參數是解決方案標識,該標識在通配符中「包含」。
可能是什麼問題?非常感謝您的幫助!
編輯:
我發現了另一個奇怪的行爲。當我訪問/admin/your-solution/add-comment/3
時,它會執行該操作。但是,如果我向該鏈接提交表單,則會顯示一個空白頁面,使用Firebug通知我該頁面未找到。很奇怪... 另外,我有一條類似的編輯評論路線。加載編輯表格和保存表格工作...
您是否在代碼中使用安全組件? – JohnP 2011-03-26 09:53:11
是的,我正在使用它。 – linkyndy 2011-03-26 12:49:12
查看我的評論以上Linkyndy!這是因爲SecurityComponent期望所有的輸入都是使用FormHelper創建的(即:$ form-> input())。如果這是導致你麻煩的領域,你可以將它添加到$ disabledFields數組中。乾杯! – fsodano 2011-03-26 15:33:57