This package is abandoned and no longer maintained. No replacement package was suggested.

CakePHP plugin for soft deleting

Installs: 197

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 1

Type:cakephp-plugin

2.1 2020-05-21 05:51 UTC

This package is auto-updated.

Last update: 2024-01-15 05:54:31 UTC


README

Build Status Scrutinizer Code Quality LICENSE Releases

This Delete plugin enable soft deletable. Entities aren't removed from your database. Instead, a deleted timestamp is set on the record.

Requirements

It is developed for CakePHP 4.x.

Installation

You can install plugin into your CakePHP application using composer.

The recommended way to install composer packages is:

composer require slicesofcake/delete

Load the Behavior

Load the Behavior in your src/Model/Table/YourTable.php (or if you have AppTable.php). The default field named in database table should be deleted (like created or modified) and compatible type with Time::now() (eg. DATE or DATETIME).

public function initialize(array $config)
{
    parent::initialize($config);

    $this->addBehavior('SlicesCake/Delete.Deleted');
}

You can configuration to customize the Delete plugin:

$this->addBehavior('SlicesCake/Delete.Deleted', [
    'field' => 'deleted_at', // Change column field name
]);

Add column by Migrations plugin

  1. Load Migrations plugin (https://github.com/cakephp/migrations).
  2. Copy file from /vendor/slicesofcake/delete/config/20200101122906_AddDeletedToProducts.example.php to your app main config directory.
  3. Rename to 20200101122906_AddDeletedTo[YourTable].php.
  4. Edit file and rename class with changes above.
  5. Update change method to set table name.
  6. Run migrations by command: cake migrations migrate