Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django中查询集中与记录的多行相关的字段的串联_Python_Mysql_Django_Annotations_Concatenation - Fatal编程技术网

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

Python Django中查询集中与记录的多行相关的字段的串联,python,mysql,django,annotations,concatenation,Python,Mysql,Django,Annotations,Concatenation,我必须使用一对多关系的模型,我试图用这些模型来区分我的记录的类型。假设第一个模型专门用于书籍信息,第二个模型是一些类型,如A、B、C,类型表与书籍之间存在间接关系,因此每本书可以是A、B或C或任何可能的类型组合。我想使用连接(或注释中的任何其他可能函数来收集字段中的所有类型) 它抛出一个错误,因为只传递了一个要连接的参数。 我要查找的结果是一个CombinedTypes字段,对于任何唯一的图书id,该字段填充“ABAB”,表明该记录是“AB”(或a、B和C的任何其他组合) 如何实现这一点?我最终

我必须使用一对多关系的模型,我试图用这些模型来区分我的记录的类型。假设第一个模型专门用于书籍信息,第二个模型是一些类型,如A、B、C,类型表与书籍之间存在间接关系,因此每本书可以是A、B或C或任何可能的类型组合。我想使用连接(或注释中的任何其他可能函数来收集字段中的所有类型)

它抛出一个错误,因为只传递了一个要连接的参数。 我要查找的结果是一个CombinedTypes字段,对于任何唯一的图书id,该字段填充“ABAB”,表明该记录是“AB”(或a、B和C的任何其他组合)


如何实现这一点?

我最终使用了@Ahmad在评论中介绍的堆栈溢出答案中解释的解决方案。

您是否阅读过一些类似和/或和/或的文档?您可以覆盖Concat函数之类的函数来实现您的目标。谢谢@Ahmad的提示。我会检查链接并让你知道结果。
Book.objects.all(
).annotate(
    Types = F('TableRelation__Type__Name')
).annotate(
    CombinedTypes = Concat('Types')
)