身份验证组件的用户功能在多个路由的情况下不起作用


Auth Component's user function not working in case multiple routing

我已以管理员版主的身份路由我的网站。意味着当我使用身份验证组件时,我的会话被创建为 Auth->Admin->idAuth->Moderator->id 并以这种方式Auth->User->id

现在我尝试函数$this->Auth->user它返回的空值为什么??

据我所知$this->Auth->user返回会话。

我知道传统的$this->Session->reads('Auth.Admin')方式,但我想使用身份验证>用户功能为什么它不起作用

请使用它来获取用户会话数据。

public function login() {
 if ($this->request->is('post')) {
     if ($this->Auth->login()) {
    $this->redirect($this->Auth->redirect());
     } else {
    $this->Session->setFlash(__('Invalid username or password, try again'));
     }
 }
}
public function index() {
    pr($this->Auth->User());
}
        auth_helper:<?php
        defined('BASEPATH') OR exit('No direct script access allowed');
        if ( ! function_exists('auth'))
        {
            function auth()
            {
                $CI =& get_instance();
                $CI->load->model('Auth_model');
                return $CI->Auth_model;
            }
            function Adminauth($admin_id) 
            {
                if($admin_id == false)
                {
                    redirect('login');
                }
            }
        }
    auth_model:
    <?php
    if (!defined('BASEPATH')) {
        exit('No direct script access allowed');
    }
    class Auth_model extends CI_Model {
        private $user = null;
        private $ci = null;
        public function __construct() {
            parent::__construct();
            $CI =& get_instance();
            $this->ci = $CI;
        }
        public function get($name, $default = null){
            if ($this->ci->session->has_userdata('auth.Adminuser_id')) {
                 $user_id = $this->ci->session->userdata('auth.Adminuser_id');
                 $this->user = $this->db->query("SELECT * FROM members WHERE u_id=? LIMIT 1", array($user_id))->row();
            }
            return !empty($this->user) ? $this->user->u_name : $default;
        }
        public function is_logged(){
            return $this->ci->session->has_userdata('auth.Adminuser_id');
        }
        public function login($user_id){
            return $this->ci->session->set_userdata('auth.Adminuser_id', $user_id);
        }
        public function logout(){
            return $this->ci->session->unset_userdata('auth.Adminuser_id');
        }
    }