django商品分类及商品数据建模实例详解

yipeiwu_com6年前Python基础

基类(商品类及分类类之间共同的字段)

class BaseModle(models.Model):
  name = models.CharField(max_length=32, unique=True)
 # 商品分类状态 1为上架 0 为下架
  status = models.SmallIntegerField(default=0)
 # 添加时间
  addtime = models.DateTimeField(auto_now_add=True)

  class Meta:
    #抽象
   abstract = True

分类建模(继承基类)

class Category(BaseModle):

  pass
  class Meta:
    db_table = 'category'  #指定表名

商品建模(相同字段继承基类)

class Goods(BaseModle):
  #商品图片
  img = models.CharField(max_length=255)
  #商品价格  最长9位保留两位小数
  price = models.DecimalField(max_digits=9,decimal_places=2)
  #商品分类外键 级联删除  一对多关系
  cate = models.ForeignKey('Category',on_delete=models.CASCADE)
  class Meta:
    db_table = 'goods'

生成迁移文件

python manage.py makemigrations

执行迁移文件

python manage.py migrate

以上就是本次介绍的全部相关知识点内容,感谢大家对【听图阁-专注于Python设计】的支持。

相关文章

python 多进程并行编程 ProcessPoolExecutor的实现

使用 ProcessPoolExecutor from concurrent.futures import ProcessPoolExecutor, as_completed im...

Python中属性和描述符的正确使用

关于@property装饰器 在Python中我们使用@property装饰器来把对函数的调用伪装成对属性的访问。 那么为什么要这样做呢?因为@property让我们将自定义的代码同变量...

Python time库基本使用方法分析

本文实例讲述了Python time库基本使用方法。分享给大家供大家参考,具体如下: 时间获取 time() 获取当前时间戳,为一个浮点数 >>>time....

对django的User模型和四种扩展/重写方法小结

User模型 User模型是这个框架的核心部分。他的完整的路径是在django.contrib.auth.models.User。以下对这个User对象做一个简单了解: 字段: 内置的U...

解决Python列表字符不区分大小写的问题

有时候,我们需要检测一个元素是否已经存在列表中,并且不区分大小写,如:列表已有元素Mary,那我们想认为MARY也已经被占用。这个例子在实际编程中会用到很多,比如保证网站注册用户独一无二...