2012-05-02 36 views
2

假設,我們的網站可以用多種語言顯示。 每個控制器的名稱被重寫爲某種語言。 例如:Yii網址管理員規則 - 提示需要

'kontakt<a:.*>' => 'contact<a>', 
'uslugi<a:.*>' => 'services<a> 
'<controller:\w+>/\w+,<id_body:\d+>' =>'<controller>/showBody/id/<id_body>' 

網址/kontakt重定向到/contact「USŁUGI」到「服務」等

好吧,但我想還可以通過最後一個控制器進行語法分析的這個結果,以kontakt/some_irrelevant_title,5被引導到contact/some_irrelevant_title,5

這是可能的一些神奇的方式來實現該行爲?

回答

1

CUrlManager模塊接受參數的正則表達式。因此,使用這些規則,並忽略路徑中的規則控制器變量(c):

'<c:(kontakt|contact)>/<a:\w+>' => 'contact/<a>', 
'<c:(uslugi|services)>/<a:\w+>' => 'services/<a>',