在CAKEPHP中根据用户类型显示元素

时间:2015-03-23 09:58:27

标签: cakephp cakephp-2.0 cakephp-2.6

我想就我的问题提供一些指导和建议:

我正在使用Cakephp框架来开发基于Web的系统。对于这个系统,我有3种类型的用户:管理员,员工和编辑。我希望有一个元素可以显示任何用户何时登录。此外,我希望这个元素的内容对于每种类型的用户都是不同的。

此外,如果网站访问者访问该网站(未登录),我希望隐藏该元素。

我创建了3个元素...现在每个都有一些文字...但是我不知道如何继续......

感谢您的指导和建议:)

1 个答案:

答案 0 :(得分:3)

如果您使用的是auth组件,这段代码将有用

if (AuthComponent::user("id")) { 
  //AuthComponent::loggedIn() you can use this as well.
  if (AuthComponent::user("role_id") == ADMIN) {
    echo $this->element('admin/menu');
  } elseif (AuthComponent::user("role_id") == STAFF) {
    echo $this->element('staff/menu');
  } elseif (AuthComponent::user("role_id") == EDITOR) {
    echo $this->element('editor/menu');
  }
}

或者您可以从会话中读取值并比较您是否使用自定义方法进行登录。