首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django -具有多个类别和子类别的对象

Django -具有多个类别和子类别的对象
EN

Stack Overflow用户
提问于 2017-08-18 06:49:00
回答 1查看 358关注 0票数 0

我一直在为此而努力寻找一个模型。我正在开发一个音乐行业的公司名录。我们已经有了500家公司的数据库。我们有这样的类别:音频,视频,照明,舞台,音乐仪器,人才,学校和Dj。

这些类别有这个子类别。-音频:录音,安装,租赁,零售-视频:安装,租赁,零售-照明:安装,租赁,零售-舞台:酒吧,迪斯科舞厅,剧院,体育场-音乐设备:零售,租赁-人才:经理,唱片公司,预订-学校:音频,制作,剧院,舞蹈- Dj:预订,零售

许多公司进入了许多这样的类别,在这些类别中,他们进入了许多子类别。

例如:X公司销售视频和音频产品,但也提供音频产品的安装服务。所以X音响公司:零售,安装。-视频:零售

在你看来,我该如何设计这些模型?

提前谢谢。

到目前为止,这是我的代码,但它是错误的。

EN

回答 1

Stack Overflow用户

发布于 2017-08-18 16:44:58

下面的方法只是解决问题的一种简单方法,它可能不是最有效的方法,但它从整体上解决了问题。

models.py

代码语言:javascript
复制
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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45746020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档