Skip to content

Latest commit

 

History

History
67 lines (39 loc) · 1.07 KB

README.rst

File metadata and controls

67 lines (39 loc) · 1.07 KB

Paranoid

Brings transparent soft delete to SQLAlchemy ORM.

Build Status

Installation

pip install sqla-paranoid

Usage

from paranoid.models import (
    Model,
    Query,
    Session,
)

class User(Model):
    __tablename__ = 'user'
    __softdelete__ = True

    id = Column(Integer, primary_key=True)
    name = Column(String)


engine = create_engine('sqlite://')
session = sessionmaker(engine, class_=Session, query_cls=Query)()

session.query(User)

Flask

Paranoid comes with a ready to use Flask extension built on top of Flask-SQLAlchemy:

from paranoid.flask import SQLAlchemy


db = SQLAlchemy(app)

Model = db.Model


class User(Model):
    __softdelete__ = True

    id = Column(Integer, primary_key=True)
    name = Column(String)

User.query