我向AppController添加了一个检查语言参数的功能
function beforeFilter(){
if(Configure::read('Config.language') == 'ara'){
$this->layout = 'rtl-layout';
} else {
$this->layout = 'ltr-layout';
}
}
但这在我的其他控制器中不起作用吗?
class ImagesController extends AppController {
var $name = 'Images';
var $helpers = array('TinyMCE');
function beforeFilter(){
if(!isset($this->params['admin'])) {
$this->Session->setFlash(__('Access denied.', true));
$this->redirect(array('controller'=>'users','action'=>'login','admin'=>false));
exit();
}
}
function index() {
$this->Image->recursive = 1;
$this->set('images', $this->paginate());
}
}
请帮助我,这让我发疯。
参考方案
我忘记了调用基类的beforeFilter()
,因为我在ImagesController
中对其进行了重载。
class ImagesController extends AppController {
var $name = 'Images';
var $helpers = array('TinyMCE');
function beforeFilter(){
parent::beforeFilter(); // <-- here
if(!isset($this->params['admin'])) {
$this->Session->setFlash(__('Access denied.', true));
$this->redirect(array('controller'=>'users','action'=>'login','admin'=>false));
exit();
}
}
function index() {
$this->Image->recursive = 1;
$this->set('images', $this->paginate());
}
}
PHP:对数组排序 - php请如何排序以下数组Array ( 'ben' => 1.0, 'ken' => 2.0, 'sam' => 1.5 ) 至Array ( 'ken' => 2.0, 'sam' => 1.5, 'ben' =&…
PHP strtotime困境 - php有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00…
PHP-全局变量的性能和内存问题 - php假设情况:我在php中运行一个复杂的站点,并且我使用了很多全局变量。我可以将变量存储在现有的全局范围内,例如$_REQUEST['userInfo'],$_REQUEST['foo']和$_REQUEST['bar']等,然后将许多不同的内容放入请求范围内(这将是适当的用法,因为这些数据指的是要求自…
php-casperjs获取内部文本 - php我正在为casperjs使用php包装器-https://github.com/alwex/php-casperjs我正在网上自动化一些重复的工作,我需要访问一个项目的innerText,但是我尚不清楚如何从casperjs浏览器访问dom。我认为在js中我会var arr = document.querySelector('label.input…
PHP PDO组按列名称查询结果 - php以下PDO查询返回以下结果:$db = new PDO('....'); $sth = $db->prepare('SELECT ...'); 结果如下: name curso ABC stack CDE stack FGH stack IJK stack LMN overflow OPQ overflow RS…