django初始化数据库的实例


Posted in Python onMay 27, 2018

最近项目需要,需要在表创建好之后,初始化一些数据。Django初始化数据的方法有很多,但都需要额外的手动操作,不智能。

看网上有一种方法用post_syncdb信号来初始化数据库,但是我用的Django版本是1.8, 使用python manage.py migrate来同步数据库,不使用Python manage.py syncdb来同步数据库,就想看看能否使用post_migrate信号来初始化数据库。研究了Django的signal,试了一下,果然可以。

在你的APP目录下,创建一个文件management.py

from django.db.model.signal import post_migrate
from myapp.models import MyModel

#定义receiver函数
def init_db(sender, **kwargs):
 if sender.name == 'MyModel.__name__':
  if not MyModel.objects.exists():
   MyModel.objects.create()  # 当发送信号的模型是你要初始化的模型的时候,在进行数据库操作,不加判断的话,每一个模型都会调用

post_migrate.connect(init_db)

这样就好了,你执行Python manage.py migrate 之后,就会初始化数据。

以上这篇django初始化数据库的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单实现python爬虫功能
Dec 31 Python
Python中的Descriptor描述符学习教程
Jun 02 Python
Python实现拷贝多个文件到同一目录的方法
Sep 19 Python
Python Tkinter实现简易计算器功能
Jan 30 Python
Django框架封装外部函数示例
May 28 Python
利用python numpy+matplotlib绘制股票k线图的方法
Jun 26 Python
Python检查图片是否损坏及图片类型是否正确过程详解
Sep 30 Python
python 监测内存和cpu的使用率实例
Nov 28 Python
关于keras.layers.Conv1D的kernel_size参数使用介绍
May 22 Python
用基于python的appium爬取b站直播消费记录
Apr 17 Python
Python制作表白爱心合集
Jan 22 Python
Python序列化模块JSON与Pickle
Jun 05 Python
django 删除数据库表后重新同步的方法
May 27 #Python
Django 根据数据模型models创建数据表的实例
May 27 #Python
Django使用Mysql数据库已经存在的数据表方法
May 27 #Python
django中模板的html自动转意方法
May 27 #Python
Django读取Mysql数据并显示在前端的实例
May 27 #Python
django加载本地html的方法
May 27 #Python
《与孩子一起学编程》python自测题
May 27 #Python
You might like
php一维二维数组键排序方法实例总结
2014/11/13 PHP
ThinkPHP实现ajax仿官网搜索功能实例
2014/12/02 PHP
smarty模板引擎中自定义函数的方法
2015/01/22 PHP
利用Homestead快速运行一个Laravel项目的方法详解
2017/11/14 PHP
Linux下安装Memcached服务器和客户端与PHP使用示例
2019/04/15 PHP
ExtJS 2.0实用简明教程之应用ExtJS
2009/04/29 Javascript
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
JScript分割字符串示例代码
2013/09/04 Javascript
js去字符串前后空格的实现方法
2016/02/26 Javascript
浅谈JavaScript for循环 闭包
2016/06/22 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
2017/02/08 Javascript
利用JS做网页特效_大图轮播(实例讲解)
2017/08/09 Javascript
基于vue.js无缝滚动效果
2018/01/25 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
2019/07/19 Javascript
JQuery发送ajax请求时中文乱码问题解决
2019/11/14 jQuery
[47:42]完美世界DOTA2联赛PWL S2 GXR vs Ink 第一场 11.19
2020/11/20 DOTA
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
pycharm远程linux开发和调试代码的方法
2018/07/17 Python
python学生信息管理系统(完整版)
2020/04/05 Python
PyCharm代码回滚,恢复历史版本的解决方法
2018/10/22 Python
python虚拟环境迁移方法
2019/01/03 Python
Python 利用切片从列表中取出一部分使用的方法
2019/02/01 Python
详解Python3 对象组合zip()和回退方式*zip
2019/05/15 Python
Django实现图片上传功能步骤解析
2020/04/22 Python
python os模块在系统管理中的应用
2020/06/22 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
德国家具、照明、家居用品网上商店:Wayfair.de
2020/02/13 全球购物
Strathberry苏贝瑞中国官网:西班牙高级工匠手工打造
2020/10/19 全球购物
八皇后问题,输出了所有情况,不过有些结果只是旋转了90度
2016/08/15 面试题
《湘夫人》教学反思
2014/02/21 职场文书
个人担保书格式范文
2014/05/12 职场文书
物业公司的岗位任命书
2014/06/06 职场文书
2014年学生管理工作总结
2014/12/20 职场文书
学校工会工作总结2015
2015/05/19 职场文书
Python 恐龙跑跑小游戏实现流程
2022/02/15 Python