sibds/yii2-trash-behavior AR models behavior that allows to mark models as deleted and then restore them.

behavioractiverecordtrash

yii2-trash-behavior

AR models behavior that allows to mark models as deleted and then restore them.

Build Status Scrutinizer Code Quality Code Coverage

Installation

The preferred way to install this extension is through composer.

Either run

$ composer require sibds/yii2-trash-behavior

or add

"sibds/yii2-trash-behavior": "*"

to the require section of your composer.json file.

How to use?

Paste in the model code:

  public function behaviors()
  {
      return [
          \sibds\behaviors\TrashBehavior::className(),
      ];
  }

To mark a record for deletion, call function delete:

  $model->delete();

The second call delete, delete the record.

To restore record:

  $model->restore();

For the correct selection of records in the model, it is necessary to redefine the function of find:

  public static function find()
  {
      return (new \sibds\behaviors\TrashQuery(get_called_class()))->findRemoved();
  }

Example of use:

  $posts = Post::find()->all();

Selecting only marked for deletion of records:

  $count = Post::find()->onlyRemoved()->count();

Selecting all records:

  $allPosts = Post::find()->withRemoved()->all();

Statistics

Downloads
GitHub Stars
GitHub Forks

Releases

Comments



v0.4.2 is the latest of 4 releases



MIT license
Stats
2 github stars & 0 github forks
0 downloads in the last day
6 downloads in the last 30 days
2410 total downloads