我的所有模特都与其他模特和他们自己有几个ManyToMany关系,他们都有一个“通过”表
假设我的模型A
有ManyToManyField
模型B
和C
,我们还要考虑字段名称与相关模型相同< / p>
我的模型D
有一个模型为A
的ManyToManyField。
现在,我希望获得与A
,B
和C
D
对象相关的所有对象
这就是我的尝试:
a1 = A.objects.get(pk = 1)
#Get all B objects related to A
a1.b.all()
#Get all C objects related to A
a1.c.all()
#Get all D objects related to A but from D class because that's where the field is
#Raises error 'ManyToManyDescriptor' object has no attribute 'all'
D.a.all(pk=1)
可以找到实际模型here(我的问题在于Pessoa和CCir)。
答案 0 :(得分:3)
您可以使用import java.util.Scanner;
public class arrayssumofodd
{
public static void main(String args[])
{
Scanner scan = new Scanner(System.in);
int rows=scan.nextInt();
int columns=scan.nextInt();
int array[][]=new int [rows][columns];
int odd=0;
int sum=0;
int num=0;
for(int i=0;i<rows;i++)
{
for(int j=0; j<columns;j++)
{
array[i][j]=scan.nextInt();
num=array[i][j];
}
for(int k=0;k<rows;k++)
{
for(int m=0;m<k;m++)
{
if(num%2!=0)
{
odd++;
sum+=odd;
}
}
}
}
System.out.println("Odd number count "+" = " +odd);
System.out.println("Sum of odd numbers "+" = " +sum);
}
}
获取反向关系,或使用您提供的代码:
a.d_set.all()
您也可以考虑为您的m2m模型提供obj = Pessoa.objects.get(pk=1) # get the object
obj.ccir_set.all()