我有两张桌子,
class A(models.Model):
name = models.CharField(max_length=1000, unique=True)
class B(models.Model):
name = models.CharField(max_length=1000, unique=True)
a = models.ForeignKey(A, on_delete=models.PROTECT, related_name="a")
我需要如下结果集,
[{ "name":"a",
"a":[
{"name":"a1"}, {"name":"b1"}, {"name":"c1"}]
}, { "name":"b",
"b":[
{"name":"a2"}]
}]
样本表数据
A
id name
------------
1 a
2 b
B
id name a
---------------
1 a1 1
2 b1 1
3 c1 1
4 a2 2
我如何在django orm中达到我想要的结果?我试过了
a_ob = A.objects.get(id=1)
b_ob = a_ob.a.all()
这会给我两个结果,我会把两者结合起来。当我想要获取表A中的所有记录而不通过id过滤时,我将使用什么。 (没有for or循环)