我一直在努力争取这个模型。 我正在开发音乐行业的公司目录。我们已有500家公司的数据库。我们有以下类别:音频,视频,照明,舞台,音乐仪器,人才,学校和DJ。
此类别具有此子类别。 - 音频:录音,安装,租赁,零售 - 视频:安装,租赁,零售 - 照明:安装,租赁,零售 - 阶段:酒吧,迪斯科舞厅,剧院,体育场馆 - 音乐仪器:零售,租赁 - 人才:经理,唱片公司,预订 - 学校:音频,制作,戏剧,舞蹈 - Dj:预订,零售
许多公司进入许多类别,在这些类别中,他们进入许多子类别。
实施例: X公司销售视频和音频产品,但也提供音频产品的安装服务。 所以X公司 - 音频:零售,安装。 - 视频:零售
在您看来,我如何才能设计模型????
先谢谢。
这是我的代码,但它错了。
答案 0 :(得分:0)
以下方法只是解决问题的一种简单方法,它可能不是最有效的方法,但它解决了整个问题。
models.py
class SubCategory(models.Model):
name = models.CharField(max_length=255)
def __str__(self):
return self.name
class Category(models.Model):
name = models.CharField(max_length=255)
sub_categories = models.ManyToManyField(SubCategory, blank=True, default=None)
def __str__(self):
return self.name
class Company(models.Model):
name = models.CharField(max_length=255)
categories = models.ManyToManyField(Category, blank=True, default=None)
sub_categories = models.ManyToManyField(SubCategory, blank=True, default=None)
def __str__(self):
return self.name