我正在使用yii框架开发一个网页,我想像Facebook一样进行URL管理。这是我的URL www.mywebpage.com/user/profile/id/10 ,但我不想显示这样的URL,我想显示这样的 www.mywebpage.com/Yogi 我可以在yii中做吗?请任何人帮助我。
检查本文以开始:http://yiitutorials.net/easy/easy-url-redriting-with-yii
您将基础存储用户自定义URL在数据库中。因此,一个示例URL是http://example.com/user/userurl
在您的主配置中,您可以设置一个规则:
user/<customurl:.+> => 'user/view' //second part is the controller/action
该规则定义了带有'http://example.com/user/'的URL,可以通过名称为'customurl'的get变量访问斜线后的零件。然后,您可以像这样访问用户自定义URL:
$_GET['customurl'];
和查询用户记录类似的内容:
$user = User::model()->find("customurl = '".$_GET['customurl']."'");
如下所述,这是一个真实网站的示例。在此示例中,URL看起来像:http://website.com/blog/{post_title}/{
因此,此规则将是:
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将指向配置中指定的控制器操作。然后,您可以使用配置中定义的变量名称访问Some_value零件(&lt;:。>)
中的位希望有帮助!
我认为您需要的所有信息都在这里:http://www.yiiframework.com/doc/guide/guide/1.1/en/topics.url