gpt4 book ai didi

python - 如何制作具有交叉关系的两个 Django 模型?

转载 作者:太空宇宙 更新时间:2023-11-04 05:49:02 30 4
gpt4 key购买 nike

我需要两个 Django 模型:第一个是Users,第二个是Projects

在它们之间我需要与附加字段的多对多关系。

如何使下面的代码工作?

from django.db import models

class User(models.Model):

name = models.CharField('Name', max_length=50)
projects = models.ManyToManyField(Project, through='UserProjects')

def __str__(self):
return self.name

class Project(models.Model):

name = models.CharField('Name', max_length=50)
users = models.ManyToManyField(User, through='UserProjects')

def __str__(self):
return self.name

class UserProjects(models.Model):

user = models.ForeignKey(User)
project = models.ForeignKey(Project)
is_active = models.BooleanField('Active')

最后 User.projects 应该为指定的 User 返回 Projects同样,Project.users 应该为指定的Project 返回Users

最佳答案

两边不用放m2m字段 Jussi 选择一个,Django 会自动为另一个方向创建反向关系。

关于python - 如何制作具有交叉关系的两个 Django 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31094617/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com