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中的Numpy入门教程
Apr 26 Python
Python制作简易注册登录系统
Dec 15 Python
Python实现读取txt文件并转换为excel的方法示例
May 17 Python
对python程序内存泄漏调试的记录
Jun 11 Python
Python使用pandas对数据进行差分运算的方法
Dec 22 Python
Python微医挂号网医生数据抓取
Jan 24 Python
Python线程之定位与销毁的实现
Feb 17 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
May 07 Python
python实现两个经纬度点之间的距离和方位角的方法
Jul 05 Python
信号生成及DFT的python实现方式
Feb 25 Python
python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例
Feb 28 Python
Python如何用re模块实现简易tokenizer
May 02 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
星际玩家的三大定律
2020/03/04 星际争霸
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
十天学会php之第八天
2006/10/09 PHP
PHP中,文件上传
2006/12/06 PHP
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/29 PHP
PHP 获取远程文件内容的函数代码
2010/03/24 PHP
php删除页面记录 同时刷新页面 删除条件用GET方式获得
2012/01/10 PHP
curl 出现错误的调试方法(必看)
2017/02/13 PHP
prototype Element学习笔记(Element篇三)
2008/10/26 Javascript
firefox下jQuery UI Autocomplete 1.8.*中文输入修正方法
2012/09/19 Javascript
THREE.JS入门教程(6)创建自己的全景图实现步骤
2013/01/25 Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
2013/05/08 Javascript
jQuery中andSelf()方法用法实例
2015/01/08 Javascript
JavaScript File API实现文件上传预览
2016/02/02 Javascript
基于jquery实现轮播焦点图插件
2016/03/31 Javascript
用headjs来管理和加载js 提高网站加载速度
2016/11/29 Javascript
Bootstrap面板学习使用
2017/02/09 Javascript
解决vue点击控制单个样式的问题
2018/09/05 Javascript
Vue模板语法中数据绑定的实例代码
2019/05/17 Javascript
微信小程序的授权实现过程解析
2019/08/02 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
2019/09/21 Javascript
小程序中手机号识别的示例
2020/12/14 Javascript
[02:19]DOTA选手解说齐贺岁
2018/02/11 DOTA
[06:06]2018DOTA2亚洲邀请赛主赛事第四日战况回顾 全明星赛欢乐上演
2018/04/07 DOTA
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
django和vue实现数据交互的方法
2019/08/21 Python
Python类反射机制使用实例解析
2019/12/30 Python
Hotels.com爱尔兰:全球酒店预订
2017/02/24 全球购物
精美的手工家居和生活用品:Nkuku
2019/11/01 全球购物
英国最受欢迎的母婴精品品牌:JoJo Maman BéBé
2021/02/17 全球购物
计算机应用专业推荐信
2013/11/13 职场文书
给领导的致歉信范文
2014/01/13 职场文书
银行批评与自我批评
2014/02/10 职场文书
金融系毕业生自荐书
2014/07/08 职场文书
学校食品安全责任书
2015/01/29 职场文书
公司业务员管理制度
2015/08/05 职场文书