Class rootlocal\crud\actions\UpdateAction
Class UpdateAction Updates an existing yii\db\ActiveRecord model.
If update is successful, the browser will be $redirect to the 'view' page.
examples:
// lambda function:
public function actions()
{
'update' => [
'class' => UpdateAction::class,
'scenario' => Book::SCENARIO_UPDATE,
'model' => function ($id, $scenario) {
$model = Book::find()->where(['id' => $id])->active()->one();
if($model !== null)
$model->scenario = $scenario;
return $model;
}
]
}
// string:
public function actions()
{
'update' => [
'class' => UpdateAction::class,
'scenario' => Book::SCENARIO_UPDATE,
'model' => Book::class
]
}
Public Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $behaviors | yii\base\Behavior[] | List of behaviors attached to this component | yii\base\Component |
| $checkAccess | Closure|array | Callable a PHP callable that will be called when running an action to determine if the current user has the permission to execute the action. | rootlocal\crud\components\Action |
| $controller | yii\base\Controller|yii\web\Controller|yii\console\Controller | The controller that owns this action | yii\base\Action |
| $id | string | ID of the action | yii\base\Action |
| $model | string|Closure|array | ActiveRecord Model | rootlocal\crud\actions\UpdateAction |
| $redirect | string|array | The URL to be redirected to. | rootlocal\crud\actions\UpdateAction |
| $scenario | string|null | Scenario for model. | rootlocal\crud\actions\UpdateAction |
| $uniqueId | string | The unique ID of this action among the whole application. | yii\base\Action |
| $view | string | The view name. | rootlocal\crud\actions\UpdateAction |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\BaseObject |
| __clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
| __construct() | Constructor. | yii\base\Action |
| __get() | Returns the value of an object property. | yii\base\BaseObject |
| __isset() | Checks if a property is set, i.e. defined and not null. | yii\base\BaseObject |
| __set() | Sets value of an object property. | yii\base\BaseObject |
| __unset() | Sets an object property to null. | yii\base\BaseObject |
| 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\BaseObject |
| canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\BaseObject |
| 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 |
| getModel() | Get model | rootlocal\crud\actions\UpdateAction |
| getScenario() | Get scenario | rootlocal\crud\actions\UpdateAction |
| getUniqueId() | Returns the unique ID of this action among the whole application. | 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\BaseObject |
| hasProperty() | Returns a value indicating whether a property is defined. | yii\base\BaseObject |
| init() | Initializes the object. | rootlocal\crud\actions\UpdateAction |
| off() | Detaches an existing event handler from this component. | yii\base\Component |
| on() | Attaches an event handler to an event. | yii\base\Component |
| run() | Runs the action. | rootlocal\crud\actions\UpdateAction |
| runWithParams() | Runs this action with the specified parameters. | yii\base\Action |
| setModel() | Set model | rootlocal\crud\actions\UpdateAction |
| setScenario() | Set scenario | rootlocal\crud\actions\UpdateAction |
| trigger() | Triggers an event. | yii\base\Component |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| afterRun() | This method is called right after run() is executed. |
yii\base\Action |
| beforeRun() | This method is called right before run() is executed. |
yii\base\Action |
| findModel() | Finds the Alias model based on its primary key value. | rootlocal\crud\actions\UpdateAction |
Property Details
ActiveRecord Model
The URL to be redirected to. This can be in one of the following formats:
- a string representing a URL (e.g. "http://example.com")
- a string representing a URL alias (e.g. "@example.com")
- an array in the format of
[$route, ...name-value pairs...](e.g.['site/index', 'ref' => 1]) yii\helpers\Url::to() will be used to convert the array into a URL.
Any relative URL that starts with a single forward slash "/" will be converted into an absolute one by prepending it with the host info of the current request.
<?= \yii\helpers\Html::a('Update', ['update', 'id' => $model->id, 'redirect' => 'index'], [
'class' => 'btn btn-primary btn-sm'
]) ?>
Scenario for model. Defaults to yii\db\ActiveRecord::SCENARIO_DEFAULT
The view name.
Method Details
Finds the Alias model based on its primary key value.
If the model is not found, a 404 HTTP exception will be thrown.
| protected yii\db\ActiveRecord findModel ( $id ) | ||
| $id | integer | Primary key |
| return | yii\db\ActiveRecord | The loaded model |
|---|---|---|
| throws | \yii\web\NotFoundHttpException | if the model cannot be found |
Get model
| public string|Closure|array getModel ( ) | ||
| return | string|Closure|array | ActiveRecord Model |
|---|---|---|
| throws | yii\base\ErrorException | if Model not specified (not set) |
Get scenario
| public string getScenario ( ) | ||
| return | string | Scenario for model. Defaults to yii\db\ActiveRecord::SCENARIO_DEFAULT |
|---|---|---|
Initializes the object.
This method is invoked at the end of the constructor after the object is initialized with the given configuration.
| public void init ( ) |
Runs the action.
| public array|string run ( $id ) | ||
| $id | integer | Primary key |
| return | array|string | Response |
|---|---|---|
Set model
| public void setModel ( $model ) | ||
| $model | string|Closure|array | ActiveRecord Model |
Set scenario
| public void setScenario ( $scenario ) | ||
| $scenario | string|null | Scenario for model. Defaults to yii\db\ActiveRecord::SCENARIO_DEFAULT |