Django 在RESTful API中同时显示父子?
我正在尝试使用Django REST框架生成json,稍后我将能够在我的网站上使用它。问题是,我有一些用户,他们有一对多的项目,这些项目有一对多的任务 问题是,我想显示我的用户列表,然后当我访问用户的详细信息时,我可以看到他的项目。然后,当我检查项目的详细信息时,我可以看到该项目的任务。现在,我的模型定义如下:Django 在RESTful API中同时显示父子?,django,rest,Django,Rest,我正在尝试使用Django REST框架生成json,稍后我将能够在我的网站上使用它。问题是,我有一些用户,他们有一对多的项目,这些项目有一对多的任务 问题是,我想显示我的用户列表,然后当我访问用户的详细信息时,我可以看到他的项目。然后,当我检查项目的详细信息时,我可以看到该项目的任务。现在,我的模型定义如下: class SimpleUser(AbstractBaseUser): username = models.TextField(max_length=40, unique=Tru
class SimpleUser(AbstractBaseUser):
username = models.TextField(max_length=40, unique=True)
firstname = models.TextField(max_length=40)
lastname = models.TextField(max_length=40)
class Project(models.Model):
user = models.ForeignKey(SimpleUser, null=True)
name = models.TextField(max_length=255)
class Task(models.Model):
project = models.ForeignKey(Project, related_name='task_project')
title = models.TextField(max_length=255)
例如,当我试图显示链接到用户的项目时,无论我尝试什么,我都会出错(我很确定这是因为我所做的是错误的),错误是“SimpleUser没有属性项目”。这是合乎逻辑的。但是我真的不知道怎么做,有人能帮我吗?你应该使用
project\u set
来访问simpleuser
项目
user = SimpleUser.objects.get(id=1)
projects = user.project_set.all()
或者使用相关的\u name=
为经理定义一个特定的名称:
user = models.ForeignKey(SimpleUser, null=True, related_name='projects')
然后,您可以通过项目
访问用户项目:
projects = user.projects.all()
尝试为关系显式指定相关\u名称
:
class Project(models.Model):
user = models.ForeignKey(SimpleUser, null=True, related_name='projects')
name = models.TextField(max_length=255)
非常感谢,我要试试!