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(urlparse)模板的使用方法总结
Oct 13 Python
Python使用pandas处理CSV文件的实例讲解
Jun 22 Python
python 异或加密字符串的实例
Oct 14 Python
python 通过类中一个方法获取另一个方法变量的实例
Jan 22 Python
python实现转盘效果 python实现轮盘抽奖游戏
Jan 22 Python
Python SSL证书验证问题解决方案
Jan 13 Python
python实现加密的方式总结
Jan 19 Python
Python 面向对象部分知识点小结
Mar 09 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 Python
关于Python字符编码与二进制不得不说的一些事
Oct 04 Python
python 发送邮件的四种方法汇总
Dec 02 Python
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
Apr 13 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与已存在的Java应用程序集成
2006/10/09 PHP
CodeIgniter CLI模式简介
2014/06/17 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
2016/10/13 PHP
thinkphp5框架前后端分离项目实现分页功能的方法分析
2019/10/08 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
关于Anemometer图形化显示MySQL慢日志的工具搭建及使用的详细介绍
2020/07/13 PHP
js Select下拉列表框进行多选、移除、交换内容的具体实现方法
2013/08/13 Javascript
jquery数组过滤筛选方法grep()简介
2014/06/06 Javascript
jQuery制作简单柱状图实例
2015/01/28 Javascript
jQuery ajax提交Form表单实例(附demo源码)
2016/04/06 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
JavaScript检查数据中是否存在相同的元素(两种方法)
2018/10/07 Javascript
node.js express框架简介与实现
2019/07/23 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
[01:06:25]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第一场 8.25
2018/08/29 DOTA
python django集成cas验证系统
2014/07/14 Python
Python创建日历实例
2014/08/21 Python
Python中列表、字典、元组、集合数据结构整理
2014/11/20 Python
Python使用xlrd读取Excel格式文件的方法
2015/03/10 Python
Python数组遍历的简单实现方法小结
2016/04/27 Python
PyQt5每天必学之滑块控件QSlider
2018/04/20 Python
python3获取当前文件的上一级目录实例
2018/04/26 Python
使用Python的toolz库开始函数式编程的方法
2018/11/15 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
python制作简单五子棋游戏
2019/06/18 Python
HTML5 常用语法一览(列举不支持的属性)
2010/01/26 HTML / CSS
英国手工布艺沙发在线购买:Sofas & Stuff
2018/03/02 全球购物
Lookfantastic西班牙官网:英国知名美妆购物网站
2018/06/13 全球购物
Marlies Dekkers内衣美国官方网上商店:高端内衣品牌
2018/11/12 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
师范毕业生个人求职信
2013/12/09 职场文书
职业规划书如何设计?
2014/01/09 职场文书
接收函格式
2015/01/30 职场文书
舞出我人生观后感
2015/06/16 职场文书
婚庆答谢词大全
2015/09/29 职场文书