对于社交网络风格的应用程序,对用户个人资料的访问级别不同,例如,完整个人资料(所有者)、有限个人资料(个人资料所有者朋友)、无访问权限(随机用户)。
如何使用 Yii 框架限制对不同配置文件视图(本例中为三个)的访问?
我自己找过这个,但是有很多令人困惑的选项,其中一些我不是 100% 肯定符合上述行为。我怀疑这是一个菜鸟问题,所以如果这在其他地方得到了很好的介绍,请随时重定向我。
对于社交网络风格的应用程序,对用户个人资料的访问级别不同,例如,完整个人资料(所有者)、有限个人资料(个人资料所有者朋友)、无访问权限(随机用户)。
如何使用 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
}
虽然这只是一个简单的技巧。可以有更复杂的方法来做到这一点。