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元组操作实例分析【创建、赋值、更新、删除等】
Jul 24 Python
关于python pyqt5安装失败问题的解决方法
Aug 08 Python
Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例
Feb 13 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
Jun 09 Python
对numpy中的where方法嵌套使用详解
Oct 31 Python
详解opencv Python特征检测及K-最近邻匹配
Jan 21 Python
Python3中编码与解码之Unicode与bytes的讲解
Feb 28 Python
Python面向对象封装操作案例详解
Dec 31 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
Jan 20 Python
python中tab键是什么意思
Jun 18 Python
python 基于opencv 绘制图像轮廓
Dec 11 Python
Python采集爬取京东商品信息和评论并存入MySQL
Apr 12 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
ftp类(example.php)
2006/10/09 PHP
ThinkPHP3.1新特性之Action参数绑定
2014/06/19 PHP
destoon后台网站设置变成空白的解决方法
2014/06/21 PHP
javascript+php实现根据用户时区显示当地时间的方法
2015/03/11 PHP
根据分辩率调用不同的CSS.
2007/01/08 Javascript
javascript 构造函数强制调用经验总结
2012/12/02 Javascript
jquery 元素控制(追加元素/追加内容)介绍及应用
2013/04/21 Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
2014/01/02 Javascript
JQuery实现table行折叠效果以JSON做数据源
2014/05/26 Javascript
一个JavaScript处理textarea中的字符成每一行实例
2014/09/22 Javascript
javascript结合ajax读取txt文件内容
2014/12/05 Javascript
angularJS与bootstrap结合实现动态加载弹出提示内容
2015/10/16 Javascript
js实现跨域访问的三种方法
2015/12/09 Javascript
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
javascript实现起伏的水波背景效果
2016/05/16 Javascript
JS条形码(一维码)插件JsBarcode用法详解【编码类型、参数、属性】
2017/04/19 Javascript
js链表操作(实例讲解)
2017/08/29 Javascript
vue自定义指令之面板拖拽的实现
2019/04/14 Javascript
小程序server请求微信服务器超时的解决方法
2019/05/21 Javascript
python使用pil生成缩略图的方法
2015/03/26 Python
python3序列化与反序列化用法实例
2015/05/26 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
pandas按若干个列的组合条件筛选数据的方法
2018/04/11 Python
python 提取key 为中文的json 串方法
2018/12/31 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
Python实现企业微信机器人每天定时发消息实例
2020/02/25 Python
python实现简单的购物程序代码实例
2020/03/03 Python
Python运行异常管理解决方案
2020/03/09 Python
VICHY薇姿英国官网:全球专业敏感肌护肤领先品牌
2017/07/04 全球购物
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
拉飞逸官网:Lafayette 148 New York
2020/07/15 全球购物
优秀女职工事迹材料
2014/02/06 职场文书
个人社会实践自我鉴定
2014/03/24 职场文书
药剂专业个人求职信范文
2014/04/29 职场文书
通过Python把学姐照片做成拼图游戏
2022/02/15 Python
tomcat下部署jenkins的方法
2022/05/06 Servers