【发布时间】:2020-10-16 09:52:57
【问题描述】:
所以我有一个类似这样的模型
class Record(models.Model):
name = models.CharField()
synonyms = ArrayField(models.CharField())
我确实有以下记录:
Record 1 = Record(name=rec1, synonyms=['a','b'])
Record 2 = Record(name=rec2, synonyms=['c'])
Record 3 = Record(name=rec3, synonyms=['d','e'])
我只想获取列表中所有记录的同义词。
我试过了:
synonyms_list = Record.objects.all().values_list('synonyms')
然后它返回:
[['a','b'],['c'],['d','e']]
但我希望它解压缩同义词列表,我希望结果是这样的
['a','b','c','d','e']
是否可以使用 Django ORM 或使用 postgres 查询来做到这一点?
【问题讨论】:
-
为什么不
[x for xs in Record.objects.values_list('synonyms', flat=True) for x in xs]?
标签: python django postgresql django-rest-framework