我必须建立具有一对多关系的模型,以试图区别我的记录类型.假设第一个模型专用于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堆栈溢出答案中解释的解决方案.