django inspectdb
使用inspectdb --通过已有数据库表生成 model.py
inspectdb辅助工具检查你的settings文件指向的数据库,决定你表示你的表的Django模型并打印Python模型代码到标准输出
这里是典型的从零开始的遗留数据库处理的过程,唯一的前提是Django已经安装并且你有一个遗留数据库
1,通过运行django-admin.py startproject mysite(这里mysite是你的项目名)创建Django项目,我们将在例子中使用mysit
e作为项目名
2,在项目中编辑settings文件mysite/settings.py来告诉Django你的数据库连接参数是什么以及数据库名是什么,特别的,
你将想指定DATABASE_NAME,DATABASE_ENGINE,DATABASE_USER,DATABASE_PASSWORD,DATABASE_HOST和DATABASE_PROT设置
3,通过运行python mysite/manage.py startapp myapp(这里myapp是你的app名)来在你的项目中创建Django app,我们这里
将使用myapp作为项目名
4,运行命令python mysite/manage.py inspectdb,这将检查DATABASE_NAME数据库中的表并为每个表打印模型类,看看输出
来了解inspectdb可以做什么事情
5,在你的app里通过使用标注shell输出重定向保存输出到models.py文件:
python mysite/manage.py inspectdb > mysite/myapp/models.py
6,编辑mysite/myapp/models.py文件,整理生成的模型并且做你需要的自定义,我们将在下一节对此给出一些提示
通过django的model.py 创建数据表
1.编写django创建数据库表语句
在数据库应用的models.py文件中,编写创建表语句。其中,class为表名。
2.在配置文件中配置要访问的数据库和使用的数据库应用
1)访问的数据库:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '172.18.100.3',
'NAME': 'db_resource',
'USER': 'res_admin',
'PASSWORD': 'res_admin',
}
}
2)使用的数据库应用:
INSTALLED_APPS = (
'resdb',
)
3. 运行命令,生成创建数据库表语句
Python manage.py sqlall resdb
4. 生成数据表
运行命令,根据已生成的数据库表语句生成数据表:
Python manage.py syncdb
django inspectdb的更多相关文章
- 数据库表反向生成(二) Django ORM inspectdb
在前一篇我们说了,mybatis-generator反向生成代码. 这里我们开始说如何在django中反向生成mysql model代码. 我们在展示django ORM反向生成之前,我们先说一下怎么 ...
- python Django 之 Model ORM inspectdb(数据库表反向生成)
在前一篇我们说了,mybatis-generator反向生成代码. 这里我们开始说如何在django中反向生成mysql model代码. 我们在展示django ORM反向生成之前,我们先说一下怎么 ...
- django,inspectdb,操作已经存在的表
1.Django附带了一个名为inspectdb程序,它可以通过现有数据库来创建模型,并将相关模型代码另存到指定文件中.在新建的newmodels.py文件中挑选指定表格对应的模型代码,并将其复制到相 ...
- 数据库已经存在表, django使用inspectdb反向生成model实体类
1.通过inspectdb处理类,可以将现有数据库里的一个或者多个.全部数据库表生成Django model实体类 python manage.py inspectdb --database defa ...
- django 有model生成SQL以及现有反向表生成model
已有models生成SQL语句 语法 python manage.py sqlall app_name # app_name, 在settings已经导入, 如: INSTALLED_APPS = ...
- Django根据现有数据库建立model
Django引入外部数据库还是比较方便的,步骤如下 创建一个项目,修改seting文件,在setting里面设置你要连接的数据库类型和连接名称,地址之类,和创建新项目的时候一致 运行下面代码可以自动生 ...
- django数据库的增删改查
正常启动服务安装数据库cmd命令:python manage.py makemigrations 创建用户 在pxm里面会有一个py文件..这就是生成了表结构cmd命令:python manage.p ...
- Django数据操作F和Q、model多对多操作、Django中间件、信号、读数据库里的数据实现分页
models.tb.objects.all().using('default'),根据using来指定在哪个库里查询,default是settings中配置的数据库的连接名称. 外话:django中引 ...
- [转]Django与遗留系统和数据库集成
From:http://www.czug.org/python/django/17.html 尽管Django最适合从零开始开发项目--所谓的"绿色领域"开发--将框架与遗留系统和 ...
随机推荐
- React.js学习知识小结(一)
学习React也有半个月了吧,这里对所学的基础知识做个简单的总结.自己先是跟着官方文档学,差不多学了四五天,也跟着入门教程做了一个简单的小栗子.然后跟着阮一峰老师的教程上手了几个小Demo,后来在网上 ...
- python基础之条件判断和循环
1.条件判断 age = 3 if age >= 18: print('adult') elif age >= 6: print('teenager') else: print('kid' ...
- CentOS 6.9修改网卡名eth1为eth0
vi /etc/udev/rules.d/70-persistent-net.rules 把NAME="eth1"修改为NAME="eth0",并将多余的记录删 ...
- FIREMONEY手机虚拟键盘遮挡的解决
FIREMONEY手机虚拟键盘遮挡的解决 尝遍了网上人们提供的N种方法之后,发现还是老猫的方法才是彻底解决问题的办法. 老猫“不看后悔XXX”--->RAD10.2.3 Flying Wang ...
- BOOST 实用手册(摘录自校友博客)
1. 序言 现在学的东西很容易忘记,写这篇文章的目的是能让我在需要时快速找回当时的感觉. Let's BOOST THE WORLD . 2. 编译:VC2005注意 在 属性->C/C++- ...
- [Android Pro] 关于BitmapFactory.decodeStream(is)方法无法正常解码为Bitmap对象的解决方法
在android sdk 1.6版本API帮助文档中,其中关于BitmapFactory.decodeFactory.decodeStream(InputStream is)的帮助文档是这么说明的: ...
- linux面试题目—2
linux面试题目—2 二 选择题 1.关闭linux系统(不重新启动)可使用命令 B . A Ctrl+Alt+Del B halt C shutdown -r now D reboot 2.实现从 ...
- 一份不太简短的LaTeX教程 lshort – A short introduction to LATEX 2elshort – A short introduction to LATEX 2e
Lshort started as a translation and rationalisation of a ground-breaking German-language i ...
- asp.net membership 修改密码
aspnet_Applications 存储数据库所涉及应用程序有关信息. aspnet_Membership 存储与用户相关信息例如:用户登陆密码,创建时间. aspnet_Paths 存储应用程序 ...
- Android MIFARE NFCA源码解析
Android MIFARE NFCA源码解析TagTechnology定义了所有标签的共有接口类BasicTagTechnology 实现了TagTechnology的一些接口 再有具体的标签协议继 ...