Jas*_*ca1 5 django many-to-many django-models
模型中是否可以多次存在相同的多对多关系(字段具有不同的字段名称)?在进行迁移时,我似乎无法让它工作,因为当我尝试将其复制到不同的名称时,python 抱怨已经存在的关系。
我的模型目前看起来像这样:
class UserLocations(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
locations = models.ManyToManyField(Locations, related_name="users")
Run Code Online (Sandbox Code Playgroud)
我想添加一个名为电子邮件的附加字段,该字段与位置字段相同。那么我会给它一个不同的相关名称吗?
是的,您可以manytomany与同一模型建立多个关系。related_name对于反向访问,两者必须不同。像这样
class MyModel(models.Model):
relation_a = models.ManyToManyField(AnotherModel, related_name='rev_relation_a')
relation_b = models.ManyToManyField(AnotherModel, related_name='rev_relation_b')
Run Code Online (Sandbox Code Playgroud)
这就是 django 抱怨的原因,因为你必须为两者明确定义单独的相关名称。
| 归档时间: |
|
| 查看次数: |
2633 次 |
| 最近记录: |