任何人都可以检查模型之间的关系是否正确吗?

时间:2016-09-29 22:15:20

标签: django database database-design django-models

  1. 有些Companies代表一些PlaceTypes(健身房,游泳池等)。
  2. 不同的PlaceTypes有不同的Criterias进行评估(员工,清洁度等)
  3. 根据公司的PlaceType,有必要运用适当的标准来评估该公司
  4. class Companies(models.Model):
        name = models.CharField()
    
    class PlaceTypes(models.Model):
        name = models.CharField()  # Gym, pool, etc.
        company = models.ForeignKey(Companies)
    
    class Criterias(models.Model):
        name = models.CharField()  # Staff, cleanness, etc.
        place_type = models.ForeignKey(PlaceTypes)
    
    class Ratings(models.Model):
        company = models.ForeignKey(Companies)
        criteria = models.ForeignKey(Criterias)
        votes = models.PositiveIntegerField()
        total = models.PositiveIntegerField()
    

    因此,Companies -> PlaceTypes -> CriteriasCompanies <- Ratings -> Criterias之间存在某种重复。可以吗?

1 个答案:

答案 0 :(得分:0)

您在评级模型中不需要公司作为外键,该模型已经有标准,其place_type指向公司,即Companies -> PlaceTypes -> Criterias -> Ratings