Django models Django多个外键还是一个足够?

Django models Django多个外键还是一个足够?,django-models,django-orm,Django Models,Django Orm,我是Django的新手,到目前为止,我还习惯于显示来自其他来源的数据 我正在着手一个新的项目,对Django处理模型关系的方式有一个疑问(做了一些搜索,但在这个特定的实例中找不到太多),我想知道最有效的方法是什么 我有3个模型,用户(显然是S),项目和报告。现在,报表是项目的一部分,由用户完成,但项目也由用户“拥有”。在这种情况下,其他用户无法查看其他用户的报告/项目。报告需要两个外键还是只需要一个外键(例如,用户创建projectA和Report1,因为Report1链接到项目,它也链接到用户

我是Django的新手,到目前为止,我还习惯于显示来自其他来源的数据

我正在着手一个新的项目,对Django处理模型关系的方式有一个疑问(做了一些搜索,但在这个特定的实例中找不到太多),我想知道最有效的方法是什么

我有3个模型,用户(显然是S),项目和报告。现在,报表是项目的一部分,由用户完成,但项目也由用户“拥有”。在这种情况下,其他用户无法查看其他用户的报告/项目。报告需要两个外键还是只需要一个外键(例如,用户创建projectA和Report1,因为Report1链接到项目,它也链接到用户),即:


如果报告仅通过项目与用户关联(这特别意味着报告与项目以外的用户关联没有任何意义),则第二个报告更好。您将始终能够通过
(报表对象).project.user
,或在搜索查询中作为
“project\uu user”
访问用户。如果使用第一个,您可能会导致报告和项目的用户数据不同步,这对您的应用程序没有意义。

我就是这么想的,我只是想确认Django会以这种方式处理。干杯
Class Report(models.Model):
    user = models.ForeignKey(User)
    project = models.ForeignKey(Project)
Class Report(models.Model):
    project = models.ForeignKey(Project)