orm和model表设计

纵饮孤独 提交于 2020-02-12 20:58:48

orm和model表设计

在这里插入图片描述
新建数据库,初始没有任何表
在这里插入图片描述
在pycharm中打开manage.py,运行makemigrations和migrate命令,自动创建表,映射在我们的数据库当中
查看setting文档,默认数据库为
查看setting文档,默认数据库为sqlite3,所以表是放在sqlite3中,此时修改默认数据库为我们的mysql引擎.name为数据库名称
在这里插入图片描述
再次运行makemigrations命令,没有问题(没有model,没有改变)
运行migrate命令,报错,原因是我们没有安装mysql数据库驱动
在这里插入图片描述
进入https://www.lfd.uci.edu/~gohlke/pythonlibs,ctrl+F搜索mysqlclient
查看自己的python版本(3.7 64位)
在这里插入图片描述
这里的位数是指python的位数,不是操作系统
在这里插入图片描述
下载完成之后,进入cmd安装.
首先进入文件所在的文件夹,然后进入自己的虚拟空间,输入命令,安装成功
在这里插入图片描述
回到pycharm,重新执行makemigrations和migrate命令,没有报错
在这里插入图片描述
再次查看数据库,刷新之后,基本表创建成功
在这里插入图片描述
django内置的基本的表创建成功,这些表我们可以不了解,但是必须要先创建好
接着,定义我们的modle,创建我们自己的表,根据需求,我们的表中需要包含姓名,邮箱,联系地址,留言
verbose_name相当于起注释,备注的作用

在这里插入图片描述
[外链图片转存失败,源站可能有防盗在这里插入!链机制,建描述]议将图片上https://传(imblog.csdnimg.cnx20021217482C0fq1528.png?x-oss-process=image/watermark,type_ZmFuZ3onaGVpdGk,shadow_1Z,text_aHR0cHM6Ly9ibG9nLmNzZGWubmV0L3lpXzc5Nw==,size_19,color_FFFFFF,t_70769)(https://imgblog.csdnimg.cn/20200212174821528.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lpXzc3Nw==,size_16,color_FFFFFF,t_70)]
其中class Mate是表的信息,其中verbose_name是说明该表是干嘛的
不设置verbose_name_plural=verbose_name的话,在后台管理显示的时候就会把表名写作"留言信息s"
db_table是指定表名称是什么,不指定的话,默认是" app名程_modle中的类名称"

回答pycharm中,执行makemigrations,migrations下生成一个py文件
在这里插入图片描述
执行migrate之后,数据库中查看,表创建成功.django的modle可以用class映射我们的表,后期我们对model的修改,直接变成对我们表的修改.
在这里插入图片描述
注意到,这里自己的添加了主键ID,因为我们在model中没有设置主键
修改model,查看数据库表中的变化.
在这里插入图片描述
在这里插入图片描述

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!