Skip to main content

A lite version of fastapi-filter for SQLAlchemy only

Project description

FastAPI filter

Compatibility

Required:

  • Python: >=3.8, <3.12
  • Fastapi: >=0.78, <0.93
  • Pydantic: >=1.10.0, <2.0.0

Optional

  • SQLAlchemy: >=1.4.36, <2.1.0

Installation


# Lite version
pip install fastapi-sqlalchemy-filter-lite

Documentation


This package was inspired by arthurio

The package is a lite version for SQLAlchemy only with a few modifications to it.

Please visit this site to view the full documentation: https://fastapi-filter.netlify.app/

Modifications / Additions


You can import the Filter class and create a filter on the fly:

from fastapi_sqlalchemy_filter import Filter

user_dict = {'name': 'Jon Snow', 'clan': 'Targaryen'}
user_filter = Filter(**user_dict)

Package returns None if an ordering field is not present on the class definition.

Note: No user action is needed on this part

This function was modified from:

...
    @property
    def ordering_values(self):
        """Check that the ordering field is present on the class definition."""
        try:
            return getattr(self, self.Constants.ordering_field_name)
        except AttributeError:
            raise AttributeError(
                f"Ordering field {self.Constants.ordering_field_name} is not defined. "
                "Make sure to add it to your filter class."
            )
...

To

...
    @property
    def ordering_values(self):
        """Check that the ordering field is present on the class definition."""
        if hasattr(self, self.Constants.ordering_field_name):
            return getattr(self, self.Constants.ordering_field_name)
        return None
...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastapi-sqlalchemy-filter-0.2.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file fastapi-sqlalchemy-filter-0.2.0.tar.gz.

File metadata

File hashes

Hashes for fastapi-sqlalchemy-filter-0.2.0.tar.gz
Algorithm Hash digest
SHA256 0b431f903f89819481a743314ddc0c50ce2844de083b33d9f981eb54243d9286
MD5 a289e9306e4e40ba4106668fe2f6e201
BLAKE2b-256 258d605baadb3ac609445760d35f3a52d2897b3ebd49aa22564013b226e9a32c

See more details on using hashes here.

File details

Details for the file fastapi_sqlalchemy_filter-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for fastapi_sqlalchemy_filter-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 37a6a1a79b1be8438cf7ce8f4d35fca9ba96017084ba26dcf70d16341e2c44bf
MD5 b8ef26f8a8ccd9b9c65e7abbf46facf7
BLAKE2b-256 4cb60c93922eafaf653ad45262d157f376b1c65d9a4a6f2af8ca1d19a00d1680

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page