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设计】的支持。

相关文章

mac下给python3安装requests库和scrapy库的实例

众所周知,Mac自带python2,但无奈我们想使用新版本,因此我们需要安装python3 安装python3我使用了homebrew,网上也有很多教程,这里不多说 为python3安装...

Python实现替换文件中指定内容的方法

本文实例讲述了Python实现替换文件中指定内容的方法。分享给大家供大家参考,具体如下: 这里使用python编写的程序,实现如下功能:将文件中的指定子串 修改为 另外的子串 编写的py...

单利模式及python实现方式详解

单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保 某一个类只有一个实例存在 。当希望在整个系统中,某个类只能出现一个实例时,单例对...

python递归法解决棋盘分割问题

python递归法解决棋盘分割问题

题目描述:将一个8*8的棋盘进行分割,将原棋盘分割下一个矩阵,同时确保剩下的棋盘也是矩阵; 再将剩下的棋盘继续进行如上分割,这样割(n-1)次,最后原棋盘被分割成n块矩形棋盘; 注意:每...

对python中的try、except、finally 执行顺序详解

如下所示: def test1(): try: print('to do stuff') raise Exception('hehe') print('to r...