2012-02-14 44 views
0

我完成了我的本地论坛供个人使用,但他们只是注册成员,我想为它设置一个管理员,但我不知道如何才能开始和完成,如果有人可以帮助我请解释一下,我感谢你的任何帮助。非常感谢你。管理员为我的本地论坛

UPDATE

我应该为管理员创建一个新表吗?
如何为他和其他成员设置角色?

UPDATE

相对于其他正常不知管理员可以有不同的布局中的所有页面(按钮来控制用户,查看在线用户的IP地址,强行禁止一个IP或访问browswer等)用户。如果他可能,那些如何定位和设置在所有页面上,那太复杂了,不是吗?还是我在想这个太过分了?

+0

通常情况下,管理员只是另一个具有一些额外特权的用户。你的系统中有用户组的概念吗? – 2012-02-14 08:10:30

+0

不,我不知道。你能给我一个链接,了解它与我目前的问题有关吗? – user1125233 2012-02-14 08:13:08

+0

这个概念来源于unix,所以可能最好的学习方式就像[this](http://www.udel.edu/topics/os/unix/general/unixgroups.html)。你也可以在[django auth](https://docs.djangoproject.com/en/dev/topics/auth/)上获取灵感。基本上,有一个组表,以及组和用户之间的多对多链接。根据用户所属的组,您执行某些操作或不执行操作。 – 2012-02-14 08:40:42

回答

0

我应该把它保存在一个用户表中,正如我现在所假设的那样,并且在用户表中保留一条记录,以表示通过其他表的左连接检索的某些特权级别的“级别”。

这只是一个例子,因为您的目标可以通过更多方式实现。

0

通常情况下,您将拥有用户表(我假设您已经拥有),并带有“角色”字段。当有人登录时,您可以检测用户是否是管理员。

如果您不需要大量的灵活性,则可以将管理权限硬编码到代码中。当某个操作要求用户是管理员时,只需检查角色字段中的值即可。

+0

谢谢我更新我的帖子以获得更好的清晰度。请阅读并帮助我 – user1125233 2012-02-14 08:51:58

0

将另一列添加到您的用户表“角色”,它定义了用户是否为admin,在登录时检查此字段并设置会话变量$_SESSION['is_admin'],然后在相关页面上检查此字段是否设置并包括管理员特定文件。

0

,你可以用我微小的验证: http://www.dereuromark.de/2011/12/18/tinyauth-the-fastest-and-easiest-authorization-for-cake2/

它不一定需要一个角色表(配置做的伎俩),并有一个设置为自动允许所有非管理员前缀的行动用户,并允许所有admin_前缀的方法给管理员。不管怎样,都不会有任何开销。

此说,你既可以使用这些admin_actions到有管理员的自己的后端,或者你可以检查里面的模板的作用,就像这样:

if ($this->Session->read('Auth.User.role_id') == Configure::read('Role.admin')) { 
    //echo admin stuff inline 
} 

这样只会输出的相关信息,如果链接/按钮你是管理员。

或者你可以混合这两种,当然。