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中实现从目录中过滤出指定文件类型的文件
Feb 02 Python
浅谈python中requests模块导入的问题
May 18 Python
python topN 取最大的N个数或最小的N个数方法
Jun 04 Python
python操作excel的包(openpyxl、xlsxwriter)
Jun 11 Python
python读取目录下最新的文件夹方法
Dec 24 Python
python使用正则来处理各种匹配问题
Dec 22 Python
Pytorch 实现计算分类器准确率(总分类及子分类)
Jan 18 Python
Python如何在单元测试中给对象打补丁
Aug 03 Python
如何实现一个python函数装饰器(Decorator)
Oct 12 Python
python集合的新增元素方法整理
Dec 07 Python
Python爬虫制作翻译程序的示例代码
Feb 22 Python
用Python制作灯光秀短视频的思路详解
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在DOS命令行下却无法链接MySQL的技术笔记
2010/12/29 PHP
PHP写UltraEdit插件脚本实现方法
2011/12/26 PHP
反射调用private方法实践(php、java)
2015/12/21 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
2016/03/10 PHP
PHP简单数据库操作类实例【支持增删改查及链式操作】
2016/10/10 PHP
超级强大的表单验证
2006/06/26 Javascript
js中匿名函数的N种写法
2010/09/08 Javascript
JS实用的动画弹出层效果实例
2015/05/05 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
详解Vue微信授权登录前后端分离较为优雅的解决方案
2018/06/29 Javascript
浅析JS中回调函数及用法
2018/07/25 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
vuex页面刷新导致数据丢失的解决方案
2020/12/10 Vue.js
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
[01:03:54]Liquid vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
利用Psyco提升Python运行速度
2014/12/24 Python
Python基于pygame实现的font游戏字体(附源码)
2015/11/11 Python
python smtplib模块自动收发邮件功能(一)
2018/05/22 Python
DRF跨域后端解决之django-cors-headers的使用
2019/01/27 Python
Python连接字符串过程详解
2020/01/06 Python
基于keras输出中间层结果的2种实现方式
2020/01/24 Python
Python新手学习装饰器
2020/06/04 Python
Python Selenium操作Cookie的实例方法
2021/02/28 Python
荷兰在线体育用品商店:Avantisport.nl
2018/07/04 全球购物
两则小学生的自我评价分享
2013/11/14 职场文书
旷课检讨书1000字
2014/02/14 职场文书
卫生院艾滋病宣传活动小结
2014/07/09 职场文书
政府个人对照检查材料思想汇报
2014/10/08 职场文书
儿园租房协议书范本
2014/12/02 职场文书
毕业生党员个人总结
2015/02/14 职场文书
2015年政协委员工作总结
2015/05/20 职场文书
2015大学党建带团建工作总结
2015/07/23 职场文书
2019奶茶店创业计划书范本!
2019/07/15 职场文书
公文写作:新员工转正申请书范本3篇!
2019/08/07 职场文书
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android
python之django路由和视图案例教程
2021/07/26 Python