2
我正在使用CakePHP 1.3,並且在前綴路由方面有一些麻煩。CakePHP與前綴路由的相對鏈接
我配置了這樣的路線:
Router::connect(
'/listing/*',
array(
'controller' => 'dsc_dates',
'action' => 'listing',
)
);
Router::connect(
'/modular/listing/*',
array(
'controller' => 'dsc_dates',
'action' => 'listing',
'prefix' => 'modular'
)
);
在我的控制器
有兩個功能:
function modular_listing($order = null,$orderDirection = null, $items=null, $location_id=null) {
$this->layout='module';
$this->setAction('listing',$order, $orderDirection, $items, $location_id);
}
function listing($order = null,$orderDirection = null, $items=null, $location_id=null){...}
前綴行動應該只是改變了一些東西,然後像正常的「上市」的方法操作。直到這裏它工作正常。
但是,如果我創建相關鏈接(與HTML幫助)路由器:: url()使用'modular_listing'作爲行動,不適合我的路線。它應該是'列出'而不是'modular_listing'。 控制器參數與「列表」作爲操作是正確的,但路由器參數仍然顯示爲「modular_listing」。
所以相關鏈接:
$this->Html->link('example',array('parameter'));
將結束在:
/dsc_dates/modular_listing/parameter
我怎樣才能得到正確的聯繫,使路由器使用「上市」作爲行動?
更新: 這是不是一個替代方案添加'控制器'和'行動'的鏈接世代的url數組。事實上,我在自動生成paginator相關鏈接時遇到了問題。