Проблема Cakephp в шоу Имя пользователя, когда после успешного входа в систему - PullRequest
0 голосов
/ 05 июня 2011

Я пытаюсь показать имя пользователя и роль пользователя при успешном входе

это я следую примеру в net.tusplus

class AccessComponent extends Object{
var $components = array('Acl', 'Auth');
var $user;

function startup(){
    $this->user = $this->Auth->user();
}

function check($aco, $action='*'){
    if(!empty($this->user) && $this->Acl->check('Group::'.$this->user['Group']['id'], $aco, $action)){
        return true;
    } else {
        return false;
    }
}

function checkHelper($aro, $aco, $action = "*"){
    App::import('Component', 'Acl');
    $acl = new AclComponent();
    return $acl->check($aro, $aco, $action);
}
}


class AccessHelper extends Helper {

var $helpers = array("Session");
var $Access;
var $Auth;
var $user;

function beforeRender() {
    App::import('Component', 'Access');
    $this->Access = new AccessComponent();

    App::import('Component', 'Auth');
    $this->Auth = new AuthComponent();
    $this->Auth->Session = $this->Session;

    $this->user = $this->Auth->user();
}

function check($aco, $action='*') {
    if (empty($this->user))
        return false;
    return $this->Access->checkHelper('Group::' . $this->user['Users']['id'], $aco, $action);
}

function isLoggedin() {
    return!empty($this->user);
}

Я пытаюсь показать статус на странице просмотра

<div id="status">  
<?php
if ($access->isLoggedin()) {
    echo "Welcome";

    echo $this->Html->link('Sign Out', array('controller' => 'users', 'action' => 'logout'));
} else {
    echo $this->Html->link('Sign In', array('controller' => 'users', 'action' => 'login'));
    echo"</br>";
    echo $this->Html->link('Sign Up', array('controller' => 'users', 'action' => 'register'));
}
?>

Если я хочу показать имя группы и имя пользователя.Что мне делать

1 Ответ

1 голос
/ 10 июня 2011

Вы можете передать пользовательскую переменную, которую вы установили в своей функции запуска, на ваш экран и отобразить информацию из нее.

контроллер

$this->set('authUser', $this->user);

просмотр

<div id="welcome">
    Welcome, <?php echo $authUser['User']['username'];?>
</div>
...