验证在 cakephp2.x 中不起作用
Validation doesn't working in cakephp2.x
我是 cakephp
的新人。我在 cakephp 2.6.7
中写了一个验证 ctp
文件用于查看登录和注销字词,但验证不起作用。
我的代码是:-
<?php
if (!$authUser) {
echo $this->element('logout-header');
} else {
echo $this->element('login-header');
}
?>
如何在 ctp
文件中编写验证以在我的页眉中查看登录和注销字词?
我有一个解决方案,我在使用 cakephp 时经常使用它。
在AppController.php
class AppController extends Controller{
public function beforeFilter() {
parent::beforeFilter();
$userInfo = array();
if($this->Auth->user('_id')){
$userInfo['User'] = $this->Auth->user();
Configure::write($userInfo);
}
}
}
然后查看 .ctp
文件
<?php
$authUser = Configure::read('User');
if (!$authUser) {
echo $this->element('logout-header');
} else {
echo $this->element('login-header');
}
?>
在您的 AppController 的 beforeRender()
回调中,通过检索登录用户设置 authUser
视图变量:-
public function beforeRender() {
parent::beforeRender();
$this->set('authUser', $this->Auth->user());
}
那么您问题中的视图代码应该会按预期工作。
为什么要写验证ctp?将您的验证规则放入模型
我是 cakephp
的新人。我在 cakephp 2.6.7
中写了一个验证 ctp
文件用于查看登录和注销字词,但验证不起作用。
我的代码是:-
<?php
if (!$authUser) {
echo $this->element('logout-header');
} else {
echo $this->element('login-header');
}
?>
如何在 ctp
文件中编写验证以在我的页眉中查看登录和注销字词?
我有一个解决方案,我在使用 cakephp 时经常使用它。
在AppController.php
class AppController extends Controller{
public function beforeFilter() {
parent::beforeFilter();
$userInfo = array();
if($this->Auth->user('_id')){
$userInfo['User'] = $this->Auth->user();
Configure::write($userInfo);
}
}
}
然后查看 .ctp
文件
<?php
$authUser = Configure::read('User');
if (!$authUser) {
echo $this->element('logout-header');
} else {
echo $this->element('login-header');
}
?>
在您的 AppController 的 beforeRender()
回调中,通过检索登录用户设置 authUser
视图变量:-
public function beforeRender() {
parent::beforeRender();
$this->set('authUser', $this->Auth->user());
}
那么您问题中的视图代码应该会按预期工作。
为什么要写验证ctp?将您的验证规则放入模型