Django中mysql的正向建模与反向建模

Django中mysql的正向建模与反向建模

正向建模

1.先创建Django的工程与项目

安装virtualenv

pip install  virtualenv

创建虚拟环境

virtualenv --no-site-package env

进入与退出

进入 cd env/Scripts/activate/
退出 deactivate
  1. #### 创建Django项目

创建工程

django-admin startproject projectname

创建项目

django-admin startapp appname

启动项目

python manage.py runserver ip:端口

将setting中INSTALLED_APPS中加入appname,DATABASES中数据库的连接,例如mysql的连接

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'day6',
        'USER':'root',
        'PASSWORD':'6666',
        'HOST':'39.108.81.211',
        'PORT':'3306'
    }
}

这里你需要将项目中models.py文件加入你想要填写的表与字段。

例如:

class Student(models.Model):

    s_name = models.CharField(max_length=10)
    s_tel = models.CharField(max_length=11)

    class Meta:
        db_table='student'

将这些都完成后进行正向建模,迁移数据库

python manage.py makemigrations
python manage.py makemigrations

反向建模

当你用爬虫爬取数据存入mysql后,也就代表数据库中含有表,而这时我们可以根据这些表来进行建模,即自动生成models.py文件

这里在你的工程与项目建立好之后,数据库有数据的情况下,进行反向建模,

需要进入你项目的虚拟环境,打开管理员模式,进入你前面创建的虚拟环境

cd env/Scripts/activate/

这里写图片描述

在虚拟环境下打开项目

这里写图片描述
后执行

python manage.py inspectdb

执行完这个你就可以具体看见由数据库表生成的模型文件,后你可以将这个文件放入你项目的models.py文件中,执行

python manage.py inspectdb>day51/stu/models.py

day51为工程名称,stu为项目名称,models.py为文件名

这里你就可以查看你的项目文件中多了models.py文件

猜你喜欢

转载自blog.csdn.net/Lq_520/article/details/81313850