当前位置:   article > 正文

Django中使用inspectdb和syncdb相互生成model.py和数据库表_inspectdb > models.py源碼

inspectdb > models.py源碼

一、使用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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/399049
推荐阅读
相关标签
  

闽ICP备14008679号