Class rootlocal\crud\actions\DeleteAction

Inheritancerootlocal\crud\actions\DeleteAction » rootlocal\crud\components\Action » yii\base\Action » yii\base\Component » yii\base\BaseObject
Implementsrootlocal\crud\components\ActionInterface, yii\base\Configurable

Class DeleteAction Deletes an existing yii\db\ActiveRecord model.

If deletion is successful, the browser will be $redirect to the 'index' page.

examples:

// lambda function:
public function actions()
{
     'delete' => [
         'class' => DeleteAction::class,
         'model' => function ($id) {
             return User::find()->where(['id' => $id])->active()->one();
         }
     ]
}

// string:
public function actions()
{
     'delete' => [
         'class' => DeleteAction::class,
         'model' => Book::class
     ]
}

Public Properties

Hide inherited properties

PropertyTypeDescriptionDefined 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\DeleteAction
$redirect string|array The URL to be redirected to. rootlocal\crud\actions\DeleteAction
$uniqueId string The unique ID of this action among the whole application. yii\base\Action

Public Methods

Hide inherited methods

MethodDescriptionDefined 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 ActiveRecord model rootlocal\crud\actions\DeleteAction
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\DeleteAction
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\DeleteAction
runWithParams() Runs this action with the specified parameters. yii\base\Action
setModel() Set ActiveRecord model rootlocal\crud\actions\DeleteAction
trigger() Triggers an event. yii\base\Component

Protected Methods

Hide inherited methods

MethodDescriptionDefined 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\DeleteAction

Property Details

$model public property

ActiveRecord model

public string|Closure|array getModel ( )
public void setModel ( $model )
$redirect public property

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('Delete', ['delete', 'id' => $model->id, 'redirect' => 'index'], [
'class' => 'btn btn-danger btn-sm',
'data' => ['confirm' => 'Are you sure you want to delete this item?', 'method' => 'POST']
]) ?>
public string|array $redirect null

Method Details

findModel() protected method

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

getModel() public method

Get ActiveRecord model

public string|Closure|array getModel ( )
return string|Closure|array

ActiveRecord model

throws yii\base\ErrorException

if Model not specified (not set)

init() public method

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 ( )
run() public method

Runs the action.

public array|\yii\web\Response run ( $id, $redirect null )
$id integer

Primary key

$redirect string|null

The URL to be redirected to

return array|\yii\web\Response

Response

setModel() public method

Set ActiveRecord model

public void setModel ( $model )
$model string|Closure|array

ActiveRecord model