yii controller filters()方法模式

Rus*_*lex 3 filter yii

每个控制器都应该有方法过滤器(),在那里你可以指定一些类,我想知道,这些类是如何被框架包含的?这些类是如何配置的,以及何时,也许有人可以给我一个模式来使用filter()并包含一些类?

Jon*_*Jon 8

控制器过滤器是派生自的类CFilter.

文档示例所示,您可以在控制器内配置它们,如下所示:

public function filters()
    {
        return array(
            'postOnly + edit, create',
            array(
                'application.filters.PerformanceFilter - edit, create',  // 1
                'unit'=>'second',                                        // 2
                'amount'=>42,                                            // 3
            ),
        );
    }
Run Code Online (Sandbox Code Playgroud)

在标记的行中,1您提供假设类的路径PerformanceFilter; Yii将其加载为任何其他组件.

在标记的行中2,3您初始化属性.您可以继续使用任意数量的键/值对; 它们都将习惯于使用相应的名称设置过滤器的属性.