Class yii\base\Action
Action 是所有控制器动作类的基类。
Action 提供了重用动作方法代码的方法。 Action 类中的 action 方法可用于多个控制器或不同的项目中。
派生类必须实现名为 run() 的方法。
请求动作时,控制器将调用此方法。
run() 方法可以有参数,
这些参数将根据用户输入值的名称自动填充。
例如,如果 run() 方法声明如下:
public function run($id, $type = 'book') { ... }
为该动作提供的参数是:['id' => 1]。
然后 run() 方法将自动调用为 run(1)。
有关 Action 的更多详细信息和用法信息,请参阅 动作指南。
公共属性
| 属性 | 类型 | 描述 | 被定义在 |
|---|---|---|---|
| $behaviors | yii\base\Behavior[] | List of behaviors attached to this component | yii\base\Component |
| $controller | yii\base\Controller|yii\web\Controller|yii\console\Controller | 拥有此操作的控制器 | yii\base\Action |
| $id | string | 动作的 ID | yii\base\Action |
| $uniqueId | string | 整个应用程序中此操作的唯一 ID。 | yii\base\Action |
公共方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\Component |
| __clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
| __construct() | 构造函数。 | yii\base\Action |
| __get() | Returns the value of a component property. | yii\base\Component |
| __isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component |
| __set() | Sets the value of a component property. | yii\base\Component |
| __unset() | Sets a component property to be null. | yii\base\Component |
| attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
| attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
| behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
| canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component |
| canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component |
| className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
| detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
| detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
| ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
| getBehavior() | Returns the named behavior object. | yii\base\Component |
| getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
| getUniqueId() | 返回整个应用程序中此动作的唯一 ID。 | yii\base\Action |
| hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
| hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component |
| hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component |
| init() | Initializes the object. | yii\base\BaseObject |
| off() | Detaches an existing event handler from this component. | yii\base\Component |
| on() | Attaches an event handler to an event. | yii\base\Component |
| runWithParams() | 使用指定的参数运行此动作。 该方法主要由控制器调用。 | yii\base\Action |
| trigger() | Triggers an event. | yii\base\Component |
受保护的方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| afterRun() | 执行 run() 后立即调用此方法。
您可以重写此方法以对动作运行执行后处理工作。 |
yii\base\Action |
| beforeRun() | 在执行 run() 之前调用此方法。
您可以重写此方法来为动作运行做准备工作。
如果该方法返回 false,将取消该动作。 |
yii\base\Action |
属性详情
拥有此操作的控制器
动作的 ID
整个应用程序中此操作的唯一 ID。
方法详情
构造函数。
| public void __construct($id, $controller, $config = []) | ||
| $id | string | 动作的 ID |
| $controller | yii\base\Controller | 拥有此动作的控制器 |
| $config | array | 将用于初始化对象属性的键值对 |
执行 run() 后立即调用此方法。
您可以重写此方法以对动作运行执行后处理工作。
| protected void afterRun() |
在执行 run() 之前调用此方法。
您可以重写此方法来为动作运行做准备工作。
如果该方法返回 false,将取消该动作。
| protected boolean beforeRun() | ||
| return | boolean | 是否运行该动作。 |
|---|---|---|
返回整个应用程序中此动作的唯一 ID。
| public string getUniqueId() | ||
| return | string | 整个应用程序中此操作的唯一 ID。 |
|---|---|---|
使用指定的参数运行此动作。 该方法主要由控制器调用。
| public mixed runWithParams($params) | ||
| $params | array | 要绑定到 action 的 run() 方法的参数。 |
| return | mixed | Action 的结果 |
|---|---|---|
| throws | yii\base\InvalidConfigException | 如果 action 类没有 run() 方法 |