想要根据django中的模型和配置生成SQL语句,需要先进行一定的设置:
首先需要在你的app文件夹中进入setting.py文件,里面有一个DATABASES,进行设置数据库的配置信息:
1
2
3
4
5
6
7
8
9
10
11
|
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添加到末尾,
1
2
3
4
5
6
7
8
9
|
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)可能会出现错误提示:
1
2
3
|
Unknown command: ‘validate‘
Type ‘manage.py help‘ for usage.
|
那么新版本的验证命令是python manage.py check
在我们验证通过之后就可以生成SQL语句了,你之前可能需要编写一下model.py中的一些内容,之后想生成SQL语句时,
之前的版本的命令是python manage.py sqlall ***(你的app的名字)
版本不匹配时,会出现错误提示:
1
2
3
|
Unknown command: ‘sqlall‘
Type ‘manage.py help‘ for usage.
|
同样如果你想提交sql语句到数据库而运行syncdb,错误提示是:
1
2
|
Unknown command: ‘syncdb‘
Type ‘manage.py help‘ for usage.
|
目前的较新版本的django的命令是:
1
2
3
4
5
|
python manage.py makemigrations books #用来检测数据库变更和生成数据库迁移文件
python manage.py migrate #用来迁移数据库
python manage.py sqlmigrate books 0001 # 用来把数据库迁移文件转换成数据库语言
|
在命令行依次执行完这三个命令你就可以进行数据访问了。
以上这篇Django 浅谈根据配置生成SQL语句的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/xiongchun11/article/details/60468279