【问题标题】:How to model this kind of a relationship in django?如何在 django 中建模这种关系?
【发布时间】:2017-08-18 05:28:35
【问题描述】:

我想要两个模型:

class Receipt(models.Model):
    # Bunch of products

class Product(models.Model):
    name = models.CharField(max_length=100)
    price = models.IntegerField()

我不想让产品知道收据,我只希望收据知道产品。如何建立这种关系?

PS:一个产品可以在多个收据中。

【问题讨论】:

  • 您不能让产品知道收据是否有原因?最直接的方法是建立多对多关系
  • 不是出于任何严格的原因,只是为了良好的设计;但我想这是不可能的。

标签: python django database django-models


【解决方案1】:

如果就像你说的那样,manyTomanyField 就足够了。

但是,如果您还需要在每个收据上存储每种成分的数量,那么您需要many2many with attributes relation

【讨论】:

    【解决方案2】:

    One2Many 关系并没有出现在 Django 中。但是,我认为这个答案就是您所追求的:Django one-to-many field without reversing dependency

    【讨论】:

    • 我稍微改变了这个问题。对于那个很抱歉。你有什么建议吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多