我在Postgres中定义了一个JSONB列,里面的数据如下:
{'related_ids': ['a', 'b', 'c', 'd']}
目前,我有两条记录,其中一条具有“数据”,例如:{'related_ids': ['a', 'b', 'c', 'd']}
另一个带有“数据”的数据,例如:{'related_ids': ['b', 'c']}
如果我这样做.filter(<column_name>['related_ids'].contains(['b'])).one_or_none()
有时我会获得第二条记录,有时会抛出多个结果异常,这应该总是可以预期的。
似乎很多好的答案都基于JSONB中的嵌套键,我想知道,鉴于这里的“值”是列表类型,该过滤器的正确方法是什么?