自定义yii导航栏可防止登录
我试图添加一个自定义引导导航栏到我的网站使用yii助推器。但是我没有使用yii booster api来生成navbar,而是使用了基本的引导框架方法。这在视觉上效果很好,但由于某些原因,每次我尝试登录时,我都会显示我已登录,但是自定义yii导航栏可防止登录,yii,yii-extensions,yii-booster,Yii,Yii Extensions,Yii Booster,我试图添加一个自定义引导导航栏到我的网站使用yii助推器。但是我没有使用yii booster api来生成navbar,而是使用了基本的引导框架方法。这在视觉上效果很好,但由于某些原因,每次我尝试登录时,我都会显示我已登录,但是Yii::app()->user->name将是guest,当我刷新站点时,它会再次显示login <div style="height: auto;" class="navbar-wrapper"> <div style="top: 0p
Yii::app()->user->name
将是guest,当我刷新站点时,它会再次显示login
<div style="height: auto;" class="navbar-wrapper">
<div style="top: 0px;" class="navbar<?php if (!Globals::is_home_page()) echo ' navbar-fixed-top';?>" id="navigation">
<div class="navbar-inner">
<button type="button" class="btn btn-navbar collapsed" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="brand" href="<?php echo Yii::app()->request->baseUrl; ?>">mysite.com</a>
<div class="nav-collapse collapse">
<ul class="nav pull-right">
<li><a class="" href="<?php echo Yii::app()->request->baseUrl; ?>/#how">How It Works</a></li>
<?php
if (Yii::app()->user->isGuest)
{
echo '<li><a class="" href="'.Yii::app()->createUrl('/login').'">Login</a></li>';
}
else
{
echo '<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="javascript:void(0);">Profile <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="'.Yii::app()->createUrl('user').'">Profile</a></li>
<li><a href="'.Yii::app()->createUrl('/orders').'">Schedule</a></li>
<li class="divider"></li>
<li><a href="'.Yii::app()->user->logout().'">Logout ('.Yii::app()->user->isGuest.' '.Yii::app()->user->id.' '.Yii::app()->user->name.')</a></li>
</ul>
</li>';
}
?>
</ul>
</div>
</div>
</div>
</div>
但当我使用下面的yii助推器时,效果很好。。。我不太明白为什么我们要用yii助推器。因为bootsrtap api要简单得多。我对这一点很陌生,这里有什么我遗漏或不理解的吗?先谢谢你
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container-fluid">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="#"><?php echo Yii::app()->name ?></a>
<div class="nav-collapse">
<?php $this->widget('zii.widgets.CMenu',array(
'htmlOptions' => array( 'class' => 'nav' ),
'activeCssClass' => 'active',
'items'=>array(
array('label'=>'Contact', 'url'=>array('/site/contact')),
array('label'=>'Login', 'url'=>array('/site/login'), 'visible'=>Yii::app()->user->isGuest),
array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)
),
)); ?>
</div>
</div>
</div>
</div>
Yii::app()->user->name返回登录用户的用户名
用于测试的用户是来宾
你必须使用
Yii::app()->user->isGuest;
这将为您提供更好的结果我正在使用if(Yii::app()->user->isGuest){}
刷新后它将注销尝试此if(!Yii::app()->user->id){