我必须使用一对多关系模型,我尝试区分我的记录类型。假设第一个模型专用于书籍信息,第二个模型是某些类型,如A,B,C,并且从类型表到书籍之间存在间接关系,因此每本书可以是A,B或C或任何可能的组合类型。我想使用连接(或注释中的任何其他可能的函数来收集字段中的所有类型)。
Book.objects.all(
).annotate(
Types = F('TableRelation__Type__Name')
).annotate(
CombinedTypes = Concat('Types')
)
抛出一个错误,因为只有一个参数被传递给Concatenated。 我正在寻找的结果是一个CombinedTypes字段,其中填充了“ABAB”,表示该记录的任何唯一ID都是“AB”(或A,B和C的任何其他组合)。
我怎样才能做到这一点?