Django 浅谈根据配置生成SQL语句的问题


Posted in Python onMay 29, 2018

想要根据django中的模型和配置生成SQL语句,需要先进行一定的设置:

首先需要在你的app文件夹中进入setting.py文件,里面有一个DATABASES,进行设置数据库的配置信息:

DATABASES = { 
 'default': { 
  # 'ENGINE': 'django.db.backends.sqlite3', 
  # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 
  'ENGINE': 'django.db.backends.mysql', 
  'NAME': '你的数据库的名字', 
  'USER': '用户名', 
  'PASSWORD': '密码', 
  'HOST': '', 
  'PORT': '3306', 
 }

接下来需要将你的app激活,同样是在setting.py文件中,有一个INSTALLED_APPS,将你的app添加到末尾,

INSTALLED_APPS = [ 
 'django.contrib.admin', 
 'django.contrib.auth', 
 'django.contrib.contenttypes', 
 'django.contrib.sessions', 
 'django.contrib.messages', 
 'django.contrib.staticfiles', 
 '你的app的名字', 
]

定义并激活了模型,接下来验证模型是否有效,在之前的版本中验证是否有效的命令是python manage.py validate

如果你的Django的版本比较新的话(我的是1.10)可能会出现错误提示:

Unknown command: ‘validate‘

Type ‘manage.py help‘ for usage.

那么新版本的验证命令是python manage.py check

在我们验证通过之后就可以生成SQL语句了,你之前可能需要编写一下model.py中的一些内容,之后想生成SQL语句时,

之前的版本的命令是python manage.py sqlall ***(你的app的名字)

版本不匹配时,会出现错误提示:

Unknown command: ‘sqlall‘

Type ‘manage.py help‘ for usage.

同样如果你想提交sql语句到数据库而运行syncdb,错误提示是:

Unknown command: ‘syncdb‘
Type ‘manage.py help‘ for usage.

目前的较新版本的django的命令是:

python manage.py makemigrations books #用来检测数据库变更和生成数据库迁移文件

python manage.py migrate #用来迁移数据库

python manage.py sqlmigrate books 0001 # 用来把数据库迁移文件转换成数据库语言

在命令行依次执行完这三个命令你就可以进行数据访问了。

以上这篇Django 浅谈根据配置生成SQL语句的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python双向链表实现实例代码
Nov 21 Python
Python入门_浅谈for循环、while循环
May 16 Python
Python 获取当前所在目录的方法详解
Aug 02 Python
Java及python正则表达式详解
Dec 27 Python
python保存二维数组到txt文件中的方法
Nov 15 Python
Python语言进阶知识点总结
May 28 Python
Python Des加密解密如何实现软件注册码机器码
Jan 08 Python
python实现提取COCO,VOC数据集中特定的类
Mar 10 Python
Tensorflow中的图(tf.Graph)和会话(tf.Session)的实现
Apr 22 Python
python MD5加密的示例
Oct 19 Python
Django配置跨域并开发测试接口
Nov 04 Python
selenium+headless chrome爬虫的实现示例
Jan 08 Python
django表单实现下拉框的示例讲解
May 29 #Python
用python编写第一个IDA插件的实例
May 29 #Python
基于python进行桶排序与基数排序的总结
May 29 #Python
Vue的el-scrollbar实现自定义滚动
May 29 #Python
基于Django与ajax之间的json传输方法
May 29 #Python
django ajax json的实例代码
May 29 #Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
May 29 #Python
You might like
php实现excel中rank函数功能的方法
2015/01/20 PHP
php查看当前Session的ID实例
2015/03/16 PHP
php筛选不存在的图片资源
2015/04/28 PHP
CakePHP框架Model关联对象用法分析
2017/08/04 PHP
Laravel框架文件上传功能实现方法示例
2019/04/16 PHP
jQuery 获取浏览器所在的IP地址的小例子
2013/11/08 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
Js保留小数点的4种效果实现代码分享
2014/04/12 Javascript
js使用ajax读博客rss示例
2014/05/06 Javascript
js实现文章文字大小字号功能完整实例
2014/11/01 Javascript
javascript动态修改Li节点值的方法
2015/01/20 Javascript
JavaScript中对JSON对象的基本操作示例
2016/05/21 Javascript
js将字符串中的每一个单词的首字母变为大写其余均为小写
2017/01/05 Javascript
javascript解析ajax返回的xml和json格式数据实例详解
2017/01/05 Javascript
彻底解决 webpack 打包文件体积过大问题
2017/07/07 Javascript
自适应布局meta标签中viewport、content、width、initial-scale、minimum-scale、maximum-scale总结
2017/08/18 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
详解浏览器缓存和webpack缓存配置
2018/07/06 Javascript
详谈js的变量提升以及使用方法
2018/10/06 Javascript
详解ES6 Symbol 的用途
2018/10/14 Javascript
vue+elementUI实现表格关键字筛选高亮
2020/10/26 Javascript
vue.js this.$router.push获取不到params参数问题
2020/03/03 Javascript
[44:51]2018DOTA2亚洲邀请赛 4.4 淘汰赛 VP vs Liquid 第二场
2018/04/05 DOTA
[01:14:55]EG vs Spirit Supermajor 败者组 BO3 第三场 6.4
2018/06/05 DOTA
[01:46]2020完美世界全国高校联赛秋季赛报名开启
2020/10/15 DOTA
python使用多线程不断刷新网页的方法
2015/03/31 Python
Python中生成器和yield语句的用法详解
2015/04/17 Python
python通过getopt模块如何获取执行的命令参数详解
2017/12/29 Python
详解Python with/as使用说明
2018/12/13 Python
python如何用matplotlib创建三维图表
2021/01/26 Python
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
大学生毕业鉴定
2014/01/31 职场文书
网络管理员岗位职责
2014/03/17 职场文书
国家奖学金获奖感言
2014/08/16 职场文书
关于感恩的演讲稿500字
2014/08/26 职场文书
Nginx解决前端访问资源跨域问题的方法详解
2021/03/31 Servers