
Security News
Meet Socket at Black Hat and DEF CON 2025 in Las Vegas
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
django-queryable-properties
Advanced tools
Write Django model properties that can be used in database queries.
|tests| |coverage| |docs| |pypi|
.. |tests| image:: https://github.com/W1ldPo1nter/django-queryable-properties/actions/workflows/test.yaml/badge.svg?branch=master :target: https://github.com/W1ldPo1nter/django-queryable-properties/actions/workflows/test.yaml .. |coverage| image:: https://codecov.io/gh/W1ldPo1nter/django-queryable-properties/branch/master/graph/badge.svg :target: https://codecov.io/gh/W1ldPo1nter/django-queryable-properties .. |docs| image:: https://readthedocs.org/projects/django-queryable-properties/badge/?version=latest :target: https://django-queryable-properties.readthedocs.io/en/latest/?badge=latest .. |pypi| image:: https://img.shields.io/pypi/v/django-queryable-properties.svg :target: https://pypi.org/project/django-queryable-properties
django-queryable-properties is a Django
_ extension that allows to implement model properties which can be used
in database queries performed via Django's ORM.
.. _Django: https://www.djangoproject.com/
Further information, including supported Python and Django versions as well as installation instructions, can be found
in the documentation hosted by readthedocs
_.
.. _documentation hosted by readthedocs: https://django-queryable-properties.readthedocs.io/
The GitHub repository
_ is the central place to report bugs and get help using the GitHub issues
_ as well as to
contribute to the project via pull requests while following the guide on contributing
_.
.. _GitHub repository: https://github.com/W1ldPo1nter/django-queryable-properties .. _GitHub issues: https://github.com/W1ldPo1nter/django-queryable-properties/issues .. _guide on contributing: https://github.com/W1ldPo1nter/django-queryable-properties/blob/master/CONTRIBUTING.rst
InheritanceModelProperty
)list_display
in Django versions above 1.7list_filter
are now processed in a more robust way, eliminating the need for
special handling when overriding get_list_filter
(as a result, the process_queryable_property_filters
admin
method is now deprecated)prefetch_queryable_properties
utility for proper support of SubqueryObjectProperty
and composite
primary keysSubqueryObjectProperty
)OrderBy
objects in admin ordering__in
filters (i.e. implicit subqueries).values()
querysets
under rare circumstances in Django versions above 3.0.values()
/.values_list()
querysets with queryable properties functionality in
Django versions below 1.9.values()
/.values_list()
querysets in Django versions below 1.8SubqueryFieldProperty
, SubqueryExistenceCheckProperty
)RelatedExistenceCheckProperty
objects can now be configured as negated to be able to check for the non-existence
of related objectsGROUP BY
columns when multiple aggregate properties are selected, which also led to
wrong property values, in Django versions below 1.8prefetch_queryable_properties
utility function which allows to efficiently query property values for
model instances that were already loaded from the database beforehandLookupFilterMixin
to allow to define a filter function/method that handles all lookups that don't
use an explicitly registered function/methodAnnotationGetterMixin
and its subclasses to be able to work with nested properties correctly regardless
of whether or not the model's base manager uses the queryable properties extensionsGROUP BY
clauses when using annotations based on aggregate queryable properties in
Django 1.8RelatedExistenceCheckProperty
)MappingProperty
)ValueCheckProperty
and RangeCheckProperty
objects can now take more complex attribute paths instead of simple
field/attribute namesRangeCheckProperty
objects now have an option that determines how to treat missing values to support ranges with
optional boundariesAggregateProperty
)classmethod
or staticmethod
decorators with lookup-based filter methods for
decorator-based propertiesWhen
parts of conditional updates.filter
/.exclude
calls in Django 3.0ValueCheckProperty
, RangeCheckProperty
) to
simplify common code patterns.values()
or .values_list()
)GROUP BY
clauses in querysets that don't return model instances (i.e. queries with
.values()
or .values_list()
) in Django versions below 1.8HAVING
clause for annotation-based filters that are not an
aggregate in Django 1.8lookup
parameter of custom filter implementations of queryable properties will now receive the combined
lookup string if multiple lookups/transforms are used at once instead of just the first lookup/transformGROUP BY
clauses when annotating queryable properties based on aggregatesHAVING
clauses when annotating queryable properties based on aggregates in Django
versions below 1.9FAQs
Write Django model properties that can be used in database queries.
We found that django-queryable-properties demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
Security News
CAI is a new open source AI framework that automates penetration testing tasks like scanning and exploitation up to 3,600× faster than humans.
Security News
Deno 2.4 brings back bundling, improves dependency updates and telemetry, and makes the runtime more practical for real-world JavaScript projects.