You can extend your models with simple crud methods to achieve something similar to the Django ORM / ActiveRecord:
# SQLAlchemy db_session setup omitted ... Model = declarative_base(name='Model') Model.query = db_session.query_property() class CRUD(): def save(self): if self.id == None: db_session.add(self) return db_session.commit() def destroy(self): db_session.delete(self) return db_session.commit() class User(Model, CRUD): __tablename__ = 'users' id = db.Column(db.integer, primary_key=True) email = db.Column(db.String(120), unique=True) def __init__(self, email): self.email = email
Then you can save or destroy the model as needed:
user = User(' example@example.com ') user.save()
source share