Django中如何通过PostgreSQL JSONField查询用户Tanner?
解决方法
要找到用户Tanner,有几种直接的QuerySet查询方式:
直接通过name字段过滤(最推荐、高效)
因为name是Profile模型的普通字段,直接匹配查询是最简单高效的方式:Profile.objects.filter(name='Tanner')结合JSONField字段条件过滤
如果需要同时验证data字段的内容(比如确认邮箱信息),可以组合多个过滤条件:Profile.objects.filter(name='Tanner', data__daily__email='a@a.com')仅通过JSONField内容定位(如果不知道name但知道data信息)
要是你只知道data里的内容,也可以结合嵌套JSON查询和name条件来精准定位:# 匹配邮箱完全一致 Profile.objects.filter(data__daily__email='a@a.com', name='Tanner') # 匹配邮箱前缀 Profile.objects.filter(data__daily__email__startswith='a', name='Tanner')
内容的提问来源于stack exchange,提问作者Sunok Jang
相关产品推荐
相关产品推荐

