编程语言
首页 > 编程语言> > python-与Django查询集中的记录的多行相关的字段的串联

python-与Django查询集中的记录的多行相关的字段的串联

作者:互联网

我必须建立具有一对多关系的模型,以试图区别我的记录类型.假设第一个模型专用于Book信息,第二个模型是A,B,C之类的某些类型,并且从Type表到Book有间接关系,因此每本书可以是A,B或C或以下任意组合类型.我想使用串联(或注释中的任何其他可能的函数来收集字段中的所有类型).

Book.objects.all(
).annotate(
    Types = F('TableRelation__Type__Name')
).annotate(
    CombinedTypes = Concat('Types')
)

由于仅传递了一个要串联的参数,因此抛出错误.
我正在寻找的结果是一个CombinedTypes字段,对于Book的任何唯一ID都填充了“ ABAB”,这表明该记录是“ AB”(或A,B和C的任何其他组合).

我该如何实现?

解决方法:

我最终使用了@Ahmad在评论中引入的post中的this堆栈溢出答案中解释的解决方案.

标签:python,mysql,django,concatenation,annotations
来源: https://codeday.me/bug/20191011/1895332.html