2011-11-29 78 views
0

我在我的項目中使用Zend路由器,規則是這樣的;Zend路徑覆蓋當前頁面中存在的所有url

<projects type="Zend_Controller_Router_Route_Regex"> 
      <route>project/(\d+)/(.+)</route> 
      <defaults> 
       <controller>project</controller> 
       <action>view</action> 
      </defaults> 
      <map> 
       <projectid>1</projectid> 
      </map> 
      <reverse>project/%d/%s</reverse> 
     </projects> 

當我走在url下面;

http://mydomain/project/1/project_name 

所有URL此頁面上存在被替換url.For上面的例子,有在此頁面的鏈接發送消息到項目社羣擁有我該鏈路上懸停時,我看到的網址是定義如上。消息發送url是這樣創建的;

<a href="<?=$this->baseUrl()?>/misc/sendmessage">Send Message</a> 

正如你可以在上面看到,我使用的網址助手和的baseUrl的內容僅僅是獲取關鍵字從appliation.ini文件名爲「的baseUrl」。

你有沒有遇到這樣的問題?提前

感謝

KR 侯賽因

+2

請修改您的問題,以包含您如何在頁面上創建不正確鏈接的示例。我猜你正在使用URL助手? –

+0

我編輯了我的問題 –

回答

0

我補充說: 「<route>default</route>」 在navigation.This默認路由的所有頁面必須添加到導航XML每個PAGE電泳問題解決

當前navigation.xml:

...... 
<settings> 
    <label>Settings</label> 
    <title>Settings</title> 
    <resource>edit</resource> 
    <privilege>edit</privilege> 
    <controller>experts</controller> 
    <action>edit</action> 
</settings> 
...... 

更新導航XML:

...... 
<settings> 
    <label>Settings</label> 
    <title>Settings</title> 
    <resource>edit</resource> 
    <privilege>edit</privilege> 
    <controller>experts</controller> 
    <action>edit</action> 
    <route>default</route> 
</settings> 
...... 

感謝

0

我不完全理解你的問題

你如何設置你的applicaiton.ini文件中的baseUrl價值?它應該是這樣的:

resources.frontController.baseUrl = "baseUrl" 

而且使用基本URL視圖助手似乎並沒有成爲你的情況最好的選擇。你爲什麼不使用url視圖助手?

url($urlOptions, $name, $reset); 
+0

我上面使用的url helpe的目的只是獲取項目的基礎url。 –