首先,我想這樣做,當用戶導航到test.com/username這將他帶到test.com/account/profile/name/username,所以我添加了這條路線Zend路線越來越混亂
$fc = Zend_Controller_Front::getInstance();
$router = $fc->getRouter();
$route = new Zend_Controller_Router_Route(
':name',
array('controller' => 'account', 'action' => 'profile'));
$router->addRoute('profile',$route);
和它使人們的工作,但現在當我使用下面的鏈接
<a href="<?php echo $this->url(array(
'controller' =>'account',
'action'=>'update'), 'default',true);?>">Settings</a>
我猜它被「混亂」,並使用上述路線,因爲它沒有去測試。 com/account/update ..
我是否必須爲更新操作添加其他路由?這不是說我必須爲與帳戶控制器相關的所有操作添加新路線嗎?
這裏有什麼幫助嗎? :)
編輯:問題是,該鏈接重定向到test.com/account/update,但它認爲「帳戶」是上述路由中定義的參數(如在test.com/name ),而不是控制器,因此將其重定向到「配置文件」操作。
從你的問題來看,問題不是很清楚。 URL助手是輸出錯誤的lin,還是輸出的鏈接被錯誤的路由匹配?或者你只是不確定如何將動作傳遞給你的個人資料路線? – 2013-02-13 19:41:24
對不起,我更新了這篇文章,希望現在有點清楚.. – Systemfreak 2013-02-13 19:46:28
因此,您的個人資料路線中是否有/ account/update的請求?因爲我沒有看到具有兩個參數的路線可以如何與具有一個參數的路線相匹配。這些路線是否明確定義爲您的問題? – 2013-02-14 09:13:17