Django ManyToMany字段在DRF中与自身相关

时间:2016-09-30 17:13:36

标签: angularjs django postgresql django-rest-framework manytomanyfield

我有一个Django Rest框架,并在名为related_groups的ManyToMany字段中添加了我试图关联回来的模型组。模型更改,makemigrations脚本创建了一个名为group_related_groups的新表(Group是先前实现的模型,为关系添加了新字段)。

新模型如下所示:

CreateCopy

我想要实现的是相关组列保存关联组的PK。例如,多组学生可以属于一组辅导员,其中组模型是所有用户的建立因素。像:

class Group(models.Model):
"""
Model definition of a Group. Groups are a collection of users (i.e.
Contacts) that share access to a collection of objects (e.g. Shipments).
"""
group_id = models.AutoField(primary_key=True)
group_name = models.CharField(max_length=100)
owner_id = models.ForeignKey('Owner', related_name='groups')
category = models.CharField(max_length=30)
related_groups = models.ManyToManyField('self', blank='true')

并在group_related_groups表上:

| id | group_name | owner_id | category  |
------------------------------------------
| 1  | students1  | 10       | student   |
| 2  | counselors | 10       | counselor |
| 3  | students2  | 10       | student   |
....
| 7  | students3  | 10       | student   |

是否可以创建新组并同时将其与现有组关联?通过添加related_groups字段创建的新表只是一个关系表,对吗?但是它需要来自新组的主键来创建关联......所以,竞争条件。

是否有一种更为公认的模式将模特成员与自身联系起来?

编辑:添加了Django Rest Framework作为要求

0 个答案:

没有答案