对于社交网络风格的应用程序,有不同级别的访问用户配置文件,例如,完整配置文件(所有者),有限配置文件(配置文件所有者好友),无访问权限(随机用户)。
如何使用Yii框架限制对不同概要文件视图(在本例中为三个)的访问?
我自己找过这个,但是有一个令人困惑的可用选项,其中一些我不能100%确定是否适合上述行为。我怀疑这是一个新手问题,所以如果在其他地方有很好的介绍,请随时重定向我。
你必须使用他们的id访问用户的配置文件,这样你就可以检查配置文件是否属于当前登录的用户的配置文件,然后在UsersController actionView中你可以做
if(Yii::app()->user->isGuest){
Yii::app()->user->loginRequired();
}
if(Yii::app()->user->id == $user_id){
//this is something to check before showing information about the current user.
//you can use this variable for some specific html blocks (to show them or not).
$user_role = '1'; //full access
}
else {
$user_role = '0'; //partial access
}
虽然这只是一个简单的技巧。还有更复杂的方法。