Skip to content
On this page

@softdelete

Soft-delete columns, active views, and optional cascade triggers

Postgres Mysql (beta) Sqlite (beta) Mssql

Example

Add soft delete behavior

Adds a deleted timestamp, an active view, and optional FK cascades.

sql
-- @softdelete(view: 'users_active')
CREATE TABLE users (
  id SERIAL PRIMARY KEY,
  email TEXT NOT NULL
);

Tags

@softdelete

Enable soft-delete on this table (adds deleted_at column and active view)

Targets: table

Arguments:

NameTypeRequiredValues
columnstringNo
viewstringNo

@softdelete.cascade

Cascade soft-delete to this FK column when the parent is soft-deleted

Targets: column

Arguments: No arguments.

Lint Rules

softdelete.require-softdelete

Tables should have a @softdelete tag

Default severity: warn