所以我是yii框架的新手,我正在做一个网站的这种博客风格,试图覆盖大部分我能想到的功能,而我坚持的功能是拥有不同的用户角色例如。如何在yii中扮演角色
假设我们有一位作家和一个正常的登录用户,当他进入文章页面时,他可以看到一些按钮,而普通用户只能看到评论按钮。
如何在Yii框架内做些什么来做到这一点?和我可以在互联网上找到的教程?
谢谢你的时间。
所以我是yii框架的新手,我正在做一个网站的这种博客风格,试图覆盖大部分我能想到的功能,而我坚持的功能是拥有不同的用户角色例如。如何在yii中扮演角色
假设我们有一位作家和一个正常的登录用户,当他进入文章页面时,他可以看到一些按钮,而普通用户只能看到评论按钮。
如何在Yii框架内做些什么来做到这一点?和我可以在互联网上找到的教程?
谢谢你的时间。
名单User
模型
class User extends MyModel {
const ROLE_ADMIN = 1,
ROLE_AUTHOR = 2,
ROLE_USER = 3;
所有角色role
领域也增加了用户(在数据库和模型)。
在components/UserIdentity.php
添加一些方法
public function isAuthor() {
return !empty($this->user) && $this->user->role == User::ROLE_AUTHOR;
}
public function isGuest(){
return empty($this->user);
}
另外,我建议这种方法添加到User
型号:
public function getRole($role = null) {
$roles = [
self::ROLE_ADMIN => 'Admin',
self::ROLE_AUTHOR => 'Author',
self::ROLE_USER => 'User',
];
if (!is_null($role)) {
return isset($roles[$role]) ? $roles[$role] : 'Unknown role';
}
return $roles;
}
你好感谢你的帮助,其他人给了我,但我有一个发现一个简单的指南,我很容易理解,它非常好用。您可以在以下Link中找到该教程。谢谢你帮助家伙!
谢谢你的回复,我会稍后尝试它,当我回家。我会让你注册日期:) – Steve 2014-09-02 13:00:16
好吧,现在我已经做到了这一点,我现在如何使用它,对框架工作很抱歉:/ – Steve 2014-09-03 07:37:00
@Colosuslol'Yii :: app() - > user-> isAdmin )'=>允许转到管理页面,否则返回登录 – Justinas 2014-09-03 08:17:47