2012-10-29 23 views

回答

0

本文取出來上手: http://yiitutorials.net/easy/easy-url-rewriting-with-yii

你會bascially被存儲在用戶自定義的URL數據庫。因此,一個例子網址是http://example.com/user/userurl

在你的主配置,你可以設置如下規則:

這條規則定義的網址是以「http://example.com/user/」,斜槓後面的部分可以通過名稱爲'customurl'的GET變量來訪問。然後,您可以訪問用戶自定義的URL,像這樣:

$_GET['customurl']; 

和查詢用戶記錄,像這樣:

$user = User::model()->find("customurl = '".$_GET['customurl']."'"); 

如下文所述,here is an example from a real website。在這個例子中,URL看起來像這樣:http://website.com/blog/ {POST_TITLE}/{POST_ID}

所以對於這個規則是這樣的:

london-blog/<post_title:.+>/<post_url:.+> => 'blog/viewpost' 

因此,在我們的博客控制器,我們有一個動作叫viewpost (參見上面的規則是如何指向該控制器/動作?),它看起來是這樣的:

public function actionViewpost(){ 
    $blogpost = Blog::model()->find("post_title = '".$_GET['post_title']."'"); 
    ... 
} 

這樣的格式倫敦的博客/ SOME_VALUE/SOME_VALUE將指向控制器動作的任何URL在配置中指定。然後,您可以使用config中定義的變量名(<:。+>中的位)訪問some_value部件。

希望有幫助!

+0

你能解釋更清晰,請 – saas

+0

你有什麼不明白?通過閱讀我張貼的鏈接的文章開始,它會給你怎樣的URL Yii中 –

+0

改寫作品怎麼做呢動態地爲所有用戶一個良好的基本的瞭解?我有一個10000用戶可以在配置文件中做什麼改變?如果我這樣做('yogi'=>'user/profile/id/44'),它只適用於一個用戶,我如何爲所有10000個用戶做到這一點? – saas

相關問題