我有一个书籍模型
class Book():
...
tags=JSONField()
我有一些记录:
Book(..., tags=['TECH', 'BUSINESS'])
Book(..., tags=['MARKETING'])
我想过滤掉带有“技术”或“商业”标签的书籍
query = Q (
Q(tags__contains='Tech') |
Q(tags__contains='Business')
)
我尝试使用 contains、contained_by、has_key、has_any_keys 但没有运气。结果总是空的。
更新
这是我的错!我发现了问题,JSONField 区分大小写。
保存在 DB 中的值["TECH", "BUSINESS"]
不是["Tech", "Business"]
.
现在问题变成了How to search in a case-insensitive manner?