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() 方法 |