Django 之 ContentType组件】的更多相关文章

一.理想表结构设计 1.初始构建 1. 场景刚过去的双12,很多电商平台都会对他们的商品进行打折促销活动的,那么我们如果要实现这样的一个场景,改如何设计我们的表? 2. 初始表设计 注释很重要,看看吧 from django.db import models # Create your models here. # 食物类 class Food(models.Model): ''' 理想中的表数据 id title 1 猪肉 2 牛肉 ''' title = models.CharField(m…
基础使用 -contenttype组件 -django提供的一个快速连表操作的组件,可以追踪项目中所有的APP和model的对应关系,并记录在ContentType表中. 当我们的项目做数据迁移后,会有很多django自带的表,其中就有django_content_type表 ContentType组件应用: 在model中定义ForeignKey字段,并关联到ContentType表,通常这个字段命名为content_type 在model中定义PositiveIntergerField字段,…
一.contentType组件 1.干什么用的? 是一个django内置的一个组件,方便我们快速的连表操作 2.这两个字段都不会在数据库中生成,他只是用来查询,插入的 -在course表中: policy = GenericRelation('PricePolicy', object_id_field='course_id', content_type_field='tyble_id') -在价格策略表中: content_obj = GenericForeignKey('table_id',…
目录 理解 表结构 使用 @ 好,现在我们有这样一个需求,我们的商城里有很多的商品,然而节日要来了,我们要搞活动. 那么,我们就要设计优惠券,优惠券都有什么类型呢?满减的.折扣的.立减的.等等等... 我们对应着活动类型,对某类商品设计优惠卷,比如: 家电是一类商品.食物是一类商品,那么我们就可以设计家电折扣优惠券,以及食物满减优惠券等. 所以,我们一顺手,表结构就出来了: from django.db import models is_true = {'null': True, 'blank'…
django-content 1.需求 一家餐馆,有多个菜系,粤菜.湘菜.闽南菜.东北菜等,每个菜系中的菜品又分为小份.中份.大份,每个菜系对应的菜品量价格不同,现需要将该需求建表. 2. 建表方式 方案一:每个菜系一张表,每个菜系的价格对应一张表,每增加一个菜系都会增加一张表 方案二:方案一的基础上简单升级版,每个菜单表和第三张表关联,此时每增加一个菜系,价格表需要增加一个字段 方案三:方案二的基础上升级,添加菜系字段,这样不需要变更表结构,也不需要新增表 当我们简单创建两张表时候可以发现,d…
content-type组件 ContentType是Django的内置的一个应用,可以追踪项目的所有APP和model的对应关系,并记录在ContentTpe表中,当我们的项目做数据迁移后,会有很多django自带的表,其中就有django_content_type表 使用场景 网上商城购物时,会有各种各样的优惠卷,比如通用优惠卷,满减卷,或者仅限特定品类的优惠卷,我们以往的方式是在数据库中,通过外键将优惠卷和不同品类的商品表关联起来 from django.db import models…
Content_Type 组件 用法: model.py: from django.db import models # Create your models here. class Food(models.Model): title = models.CharField(max_length=32) class Foute(models.Model): title = models.CharField(max_length=32) 现在有食物和水果两张表,要为其创建一个优惠卷,应该怎么创建呢?…
一.什么是 ContentTypes ContentTypes 是 Django 内置的一个应用,它可以追踪记录项目中所有 app 和 model 的对应关系,并记录在 django_content_type 表中. 二.ContentTypes 的应用场景 ContentTypes 适用于一张表与多张表相关关联的场景,如:一个卖课程的网站,它主要售卖两类课程(普通课程和学位课程).不同课程之间因学习周期不同,价格也不尽相同.因此就形成了每个课程可能有一个或多个价格策略.类似于下面这种: 如果我…
一.项目背景 二.版本一 三.版本二 三.终极版(使用ContentType) 一.项目背景 luffy项目,有课程有学位课(不同的课程字段不一样),价格策略 问题:1.如何设计表结构,来表示这种规则 2.为专题课,添加三个价格策略 3.查询所有的价格策略,并且显示对应的课程名称    4.通过课程id,获取课程信息和价格策略 二.版本一 一个课程表,包含学位课和专题课,一个价格策略表,一对多关联 三.版本二 学位课表,专题课表,周末表,价格策略表(在价格策略表中加入多个FK跟课程表做关联):后…
一.什么是Django ContentTypes? Django ContentTypes是由Django框架提供的一个核心功能,它对当前项目中所有基于Django驱动的model提供了更高层次的抽象接口.主要用来创建模型间的通用关系(generic relation). 进一步了解ContentTypes可以直接查阅以下这两个链接: Django official documentation:The contenttypes framework stackoverflow: How exact…