django orm 中的 Postgresql 前缀

Postgresql Prefix in django orm

我怎样才能在 django 中使用 Postgres Prefix Plugin?有没有办法在 django 运行的查询中附加一个额外的 WHERE 子句而不进入原始 SQL?

也许是这样的?

Model.objects.filter(field1=2, field2__in=[1,2,3]).where("prefix @> '0123456789'")

是的,这是可能的,这是 QuerySet 上的 extra 方法。像这样的东西应该可以解决问题:

 Model.objects.filter(...).extra(where=["prefix @> '0123456789'"])