zoukankan      html  css  js  c++  java
  • yii2 在控制器重写 beforeAction() 方法时,behaviors 失效、不可用的原因

    behaviors失效,behaviors执行不在控制器前的原因:

    在重写 beforeAction() 时,没有调用父类的 beforeAction(), 所以定义的 behaviors() 的就没有达到自己想要的效果

    修改方法:

        public function beforeAction($action)
        {
            retrun parent::beforeAction($action);
        }
    //页面缓存
        public function behaviors(){
            return [
                [
                    'class' => 'yiifiltersPageCache',
                    'duration' => 86400,//时间设置,0为无限时间
                    //'only' =>['index'], //规定缓存哪一个,默认为全部
                     'variations' => [  // 根据语言的不同,生成多个缓存
                         Yii::$app->language,
                          Yii::$app->request->get('pageCache'),
                     ],
                    'enabled' => true
                ]
            ];
        }
    

    修改组件配置文件 /common/config/main.php

     控制器方法例子:

  • 相关阅读:
    Java修饰符大汇总
    死锁
    线程的几种可用状态
    重载与覆盖(重写)
    Git
    JS跨域
    Spring中的Bean
    ZooKeeper
    Mysql(2)
    Maven
  • 原文地址:https://www.cnblogs.com/-mrl/p/12354659.html
Copyright © 2011-2022 走看看