博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django2.1-mysql学习(三)
阅读量:3916 次
发布时间:2019-05-23

本文共 1952 字,大约阅读时间需要 6 分钟。

Django2.1-mysql学习(三)

模型的定义

从今天起开始正式记录我用django2.1-mysql,完成部分礼品仓库管理系统的功能

模型的定义

在这个场景中,我设计了三个模型:Present(礼品),Depot(仓库),Employee(员工)具体的模型定义如下:
class Present(models.Model):    name = models.CharField(max_length=200) #礼品名    on_date = models.DateTimeField() #上架日期    store_num = models.IntegerField() #上架数量    status = models.IntegerField(default=0) #0代表审核, 1代表上架, 2代表上架    cost = models.DecimalField(max_digits=11, decimal_places=2) #礼品价格    hot = models.IntegerField(default=0) #热度    off = models.IntegerField(default=0) #0代表不打折, 1代表打折    off_cost = models.DecimalField(max_digits=3, decimal_places=2, null=True) #折扣    url = models.CharField(max_length=200, null=True) #图片    pdepot = models.ForeignKey(        Depot,        on_delete=models.CASCADE    ) #礼品所在仓库    class Meta():        db_table = 'Present'class Depot(models.Model):    name = models.CharField(max_length=200) #仓库名    address = models.CharField(max_length=200) #仓库地址    manager = models.ForeignKey(        Employee,        on_delete=models.SET_NULL,        blank=True,        null=True    )  #仓库管理员    class Meta():        db_table = 'Depot'class Employee(models.Model):    name = models.CharField(max_length=200) # 员工姓名    password = models.CharField(max_length=200) #员工密码    order = models.IntegerField(choices=((0, '无权限'),                                            (1, '普通员工:查看权限,上架下架'),                                            (2, '仓库管理员:增删改'),), default=0) #员工权限    posit = models.CharField(max_length=200)  #员工职位    phone = models.CharField(max_length=200) #员工电话    class Meta():        db_table = 'Employee'
其中,class Meta() 是为你所设计的模型自定义表名,不自己定义也没有关系,不定义的话,你所设计的表名如APPwarehouse下的Present表:warehouse_present,但是,你的模型名还是Present

使用Terminal命令

py manage.py makemigrationspy manage.py migrate

完成以上步骤后,在你绑定的mysql数据库中刷新,就能够看到你所建立的表了,至于模型中的字段后的约束条件什么意思还请自行百度。但请注意,Django中定义的所有字段默认都是不可为空的,如允许为空则需加上:null=True

源码地址:

https://github.com/easonyes/djiango_study_1/blob/master/warehouse/models.py

转载地址:http://uaprn.baihongyu.com/

你可能感兴趣的文章
Js Event Loop
查看>>
git init --bare
查看>>
setting up a new remote git repository
查看>>
tcpdump practice
查看>>
python signal handling
查看>>
signals linux
查看>>
Mysql服务器调优
查看>>
spring相关面试题
查看>>
java面向对象设计的六大原则
查看>>
java面向对象6大原则2
查看>>
java线程池学习
查看>>
Java线程:概念与原理
查看>>
Java线程:并发协作-死锁
查看>>
《构建高性能web站点》笔记--基础架构篇
查看>>
以太坊源码分析---go-ethereum之p2p通信分析(1)
查看>>
以太坊源码分析---go-ethereum之p2p通信分析(2)
查看>>
groupcache源码分析
查看>>
go-metrics源码分析
查看>>
beego/cache源码分析---典型的工厂模式
查看>>
Boltdb源码分析(一)-------page结构
查看>>