首页 > 解决方案 > Django 模型中的类型和子类型

问题描述

这似乎相当简单,但解决方案对我来说不够直观。虽然找不到包含这个确切问题的 SO 帖子。

我有一个School模型,该模型具有到模型的 ManyToMany 映射Area,然后该模型具有到模型的 OneToMany 映射SubArea

class School(models.Model):
  area = models.ManyToManyField(Area, blank=True)
  sub_area = models.ManyToManyField(Area, blank=True)

class Area(models.Model):
  name = models.CharField(max_length=100, unique=True)

class SubArea(models.Model):
  name = models.CharField(max_length=100, unique=True)
  area = models.ForeignKey(Area, blank=True) 

一个School对象可以属于一个或多个s,也可以属于an中的Area一个特定对象,但放入模型中感觉不太直观,因为我觉得它应该以某种方式“通过”该领域,尽管我可能是错的。以上似乎是建模的理想方法吗?SubAreaAreasub_areaSchoolarea

标签: djangodjango-models

解决方案


推荐阅读