{"library":"sqlalchemy-filters","title":"sqlalchemy-filters","type":"library","description":"A library to filter SQLAlchemy queries using a JSON-like filter specification. Current version: 0.13.0, supports SQLAlchemy 1.4, Python 3.7+. Release cadence is irregular.","language":"python","status":"active","last_verified":"Mon Apr 27","install":{"commands":["pip install sqlalchemy-filters"],"cli":null},"imports":["from sqlalchemy_filters import apply_filters","from sqlalchemy_filters import apply_sort"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/juliotrigo/sqlalchemy-filters","docs":null,"changelog":null,"pypi":"https://pypi.org/project/sqlalchemy-filters/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"from sqlalchemy import create_engine, Column, Integer, String\nfrom sqlalchemy.orm import declarative_base, sessionmaker\nfrom sqlalchemy_filters import apply_filters, apply_sort\n\nBase = declarative_base()\nclass Book(Base):\n    __tablename__ = 'book'\n    id = Column(Integer, primary_key=True)\n    title = Column(String)\n    price = Column(Integer)\n\nengine = create_engine('sqlite:///:memory:', echo=False)\nBase.metadata.create_all(engine)\nSession = sessionmaker(bind=engine)\nsession = Session()\nsession.add_all([Book(title='A', price=10), Book(title='B', price=20)])\nsession.commit()\n\nfilter_spec = [{'field': 'price', 'op': 'gt', 'value': 15}]\nquery = session.query(Book)\nfiltered_query = apply_filters(query, filter_spec)\nresults = filtered_query.all()\nprint([(b.title, b.price) for b in results])","lang":"python","description":"Filters a SQLAlchemy query with a simple filter specification.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}