首页  >  文章  >  后端开发  >  您可以根据模型属性过滤 Django 查询集吗?

您可以根据模型属性过滤 Django 查询集吗?

Susan Sarandon
Susan Sarandon原创
2024-10-17 17:03:30229浏览

Can You Filter Django Querysets Based on Model Properties?

按 Django 模型属性过滤

您可以根据模型属性过滤 Django 查询集吗?假设您有一个定义如下的模型属性:

<code class="python">@property
def myproperty(self):
    # ...</code>

您想要使用此属性过滤查询集,例如:

<code class="python">MyModel.objects.filter(myproperty=[...])</code>

这可以实现吗?

回答

不幸的是,不可能直接在 Django 中过滤模型属性。 Django 过滤器在数据库级别运行,生成 SQL。要评估 Python 属性,必须首先将对象引入 Python。然而,这种方法违背了数据库过滤的目的。

以上是您可以根据模型属性过滤 Django 查询集吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn