按 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中文网其他相关文章!