python - Django 全局过滤器

标签 python django filter global

有没有办法全局过滤 Django 模型?我们需要在一个地方设置一个过滤器,以便它应用于 Django ORM 生成的所有查询,包括相关对象查找等。示例:

class A(Model):
    n = IntegerField()

class B(Model):
    a = ForeignKey(A)

我们想在 A 上设置一个全局过滤器 id__gte=10(为简单起见,静态的)。然后在进行相关查询时也必须自动应用过滤器,例如

B.objects.filter(a__n=123)  # this code cannot be modified

应该神奇地扩展到等同于

B.objects.filter(a__n=123, a__id__gte=10)

我们可以更改模型、管理器、查询集,但我们无法更改实际查询对象的代码(大量代码、第三方应用程序、通用 API)。

最佳答案

如何使用过滤器在数据库中创建一个 View 并创建一个指向该 View 的 Django 模型?

关于python - Django 全局过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54240463/

相关文章:

Python:QuickBooks API 集成

django - (学习)根据自己的 API 构建用户端网站,还是将 API 与核心功能分开,这是一个好的做法吗?

java - 如何用Java实现Chebyshev Type 2 LPF?

javascript - js : create an array that holds the indexof duplicates in array

python - Flask 蓝图和 werkzeug.contrib.cache

python - 在 python Pillow 中使用列表生成图像不起作用

python - 查找手性中心 rdkit

python - 如何在 Pycharm Mac Osx Community Edition 5 中将模板语言设置为 Django?

python - 模型属性 django 中的简单乘法?

filter - Elasticsearch过滤器不适用于字符串过滤器术语