Django与连接表特定字段的多对多关系

gg

我正在将应用程序迁移到Django,并使用其内置的ORM,而不是编写SQL查询。我遇到的问题是我的多对多关系中的一种。我有以下型号:

class Orgs(models.Model):
    org = models.AutoField(primary_key=True)
    org_name = models.CharField(max_length=45, null=False)
    org_hood = models.CharField(max_length=60, null=False)
    creation_date = models.DateField(auto_now_add=True)

class Members(models.Model):
    member_ID = models.AutoField(primary_key=True)
    user = models.OneToOneField(User)
    nick_name = models.CharField(max_length=20, null=False)
    is_self_managed = models.BooleanField(default=True)
    orgs = models.ManyToManyField(Orgs, null=True)

有许多组织和许多成员。一个成员可以是许多组织的一部分,而一个组织可以有许多成员。每个成员都有与其所属的组织相关的余额($ 0.00)。例如:

member1 is in Org1 with a balance of $3.85
member1 is in Org2 with a balance of $2.00
member2 is in Org1 with a balance of $0.85

我不知道如何定义此余额字段。当我不使用ORM时,我手动创建了联接表,并在联接表中定义了我需要的这些字段。

凯文·克里斯托弗·亨利

使用through参数ManyToManyField您可以显式定义联接表,并将balance字段放在那里。

class Orgs(models.Model):
    ...
    members = ManyToManyField(Members, through='Membership')

class Members(models.Model):
    ...

class Membership(models.Model)
    org = models.ForeignKey(Orgs)
    member = models.ForeignKey(Members)
    balance = models.DecimalField()  # or whatever your field type is

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

连接表/多对多关系

来自分类Dev

Django 多对多关系

来自分类Dev

FuelPHP-多对多关系表中的字段?

来自分类Dev

EF6 多对多关系,多表连接表

来自分类Dev

在Django的多对多关系中获得额外的字段值

来自分类Dev

Django - 查询以检查多对多关系字段中的项目

来自分类Dev

解决多对多关系时 django Prefetch() 的字段错误

来自分类Dev

与联接表的多对多关系

来自分类Dev

Django中的多对多关系

来自分类Dev

与Django,Python的多对多关系

来自分类Dev

了解多对多关系:如何在 django 中选择属于我的多对多关系字段的实例?

来自分类Dev

RESTful API中与字段的多对多关系

来自分类Dev

多对多关系中的附加字段

来自分类Dev

如何引用多对多关系的相交表?

来自分类Dev

Hibernate:多对多关系表作为实体

来自分类Dev

联接2个多对多关系表

来自分类Dev

Hibernate:多对多关系表作为实体

来自分类Dev

将数据插入表的多对多关系

来自分类Dev

Rails:多对多关系联接表设计

来自分类Dev

单个表在Access中的多对多关系

来自分类Dev

SQL连接在具有多对多关系的联结表上

来自分类Dev

如何动态获取多对多关系的连接器表名称?

来自分类Dev

在SQL中连接具有多对多关系的两个表

来自分类Dev

如何在不破坏范式的情况下为多对多关系构建连接表

来自分类Dev

如何在Hibernate中以多对多关系在连接表中插入常量值?

来自分类Dev

EF7连接表中的重复条目用于多对多关系

来自分类Dev

连接两个在 powerpivot 中具有多对多关系的表

来自分类Dev

如何使用连接表和多对多关系显示 ArrayCollection 的元素?

来自分类Dev

反对 js:无法使用连接表额外属性更新多对多关系。说附加属性无效

Related 相关文章

热门标签

归档