2014-01-27 97 views
0

我在我的YII項目中啓用了網址管理。 大多數鏈接工作,但我有幾個鏈接有一個從數據庫中獲得的ID,這些鏈接不工作。YII網址管理工作,除了網址與ID's

本地主機/項目/網站/聯繫< - 此鏈接工作

本地主機/項目/網站/網頁&視圖= contentpage & ID = 1 < - 這個人是不是。

我怎樣才能得到這個鏈接的行爲作爲一個友好的網址?

這些是我在main.php文件中的urlmanager中的當前規則。

'urlManager'=>array(
     'urlFormat'=>'path', 
        'showScriptName'=>false, 
        'caseSensitive'=>false, 
     'rules'=>array(
      '<controller:\w+>/<id:\d+>'=>'<controller>/view', 
      '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>', 
      '<controller:\w+>/<action:\w+>'=>'<controller>/<action>', 

     ), 
      ), 

非常感謝你!

編輯 - 我現在已經改變了網址有一個?而不是&。 該鏈接現在正在工作,但我如何使它適用於任何想法?謝謝! :)

+1

第二屆一個不應該工作,因爲它不能確定控制器和achtion。第一個'&'應該是'?'。這能解決什麼嗎? (localhost/project/site/page?view = contentpage&id = 1) – Blizz

+0

試試'localhost/project/site/page/1?view = contentpage' – tinybyte

+0

非常感謝你的回覆。該鏈接現在確實可行!感謝您的回覆。然而,它並不是真的很友善,對於我應該創建哪些規則來使這些鏈接更友好有任何想法? – user3240230

回答

0

規則:'<controller:\w+>/<action:\w+>/<id:\d+>/*'=>'<controller>/<action>'

網址:localhost/project/site/page/1/view/contentpage

+0

你好!感謝您的回覆。我剛剛添加了規則'///*'=>'/',但url仍然是這樣的:'page?view = contentpage&id = 1'錯誤? – user3240230

+0

試試這個:'$ this-> createUrl('site/page',array('id'=> 1,'view'=>'contentpage'))' – Goodnickoff

+0

我該在哪裏準確地放置該行?嘗試了幾個地方,但沒有工作。 – user3240230