首页 > 解决方案 > Django 多对多有两个模型?

问题描述

我有两个模型Students, University。通过使用这个,学生可以申请大学课程,要求是当学生申请大学课程时,我需要创建一个应用程序(计划为应用程序创建单独的模型)

学生和大学都可以访问此应用程序。使两者都访问应用程序的目的是因为有许多应用后数据要在以后进行操作!

那么如何创建一个通用的应用程序表 - 以便两者都可以访问或创建单独的表无效?

请指导如何解决这个问题!

Option1: Can a many to many be combined with Student and University to create a application model 

Option2: Add manytomany field to students model itself with University as foreign key ?

我的记录大约超过 100 万,所以有点担心效率!哪个是处理双向通信的更好选择

标签: django

解决方案


Option1: Can a many to many be combined with Student and University to create an application model 

选项 1 由任回答。有关解释,您可以查看Django Features and Libraries University of Michigan Video

选项2:这不会满足您的要求。事实上,Django 会自动生成一个表来管理多对多关系。您需要手动指定中间表,您可以使用 through 选项指定代表您要使用的中间表的 Django 模型。即选项1

参见ManyToManyField官方文档。


推荐阅读