当前位置:Gxlcms > 数据库问题 > python3 django连接mysql,同步表结构

python3 django连接mysql,同步表结构

时间:2021-07-01 10:21:17 帮助过:27人阅读

pip3 install PyMySQL 然后在工程目录的__init__.py中填写下面两句话   import pymysql
pymysql.install_as_MySQLdb()     问题:安装过程中如果提示No module named ‘MySQLdb‘   解决方法:python3使用上面的方法替代MySQLdb 原因:python3中,不再使用MySQLdb包了

第二步:配置数据库和INSTALLED_APPS(app下的settings.py)

配置数据库 DATABASES = {
    ‘default‘: {
        ‘ENGINE‘: ‘django.db.backends.mysql‘,#数据库引擎
        ‘NAME‘: ‘UITest‘,#数据库名
        ‘USER‘:‘root‘,#数据库用户名
        ‘PASSWORD‘:‘123456‘,#数据库密码
        ‘HOST‘:‘‘,#数据库地址,默认localhost
        ‘PORT‘:‘‘,#数据库端口,默认3306
    } }   配置INSTALLED_APPS 在INSTALLED_APPS下添加app名 INSTALLED_APPS = [     ‘django.contrib.admin‘,
    ‘django.contrib.auth‘,
    ‘django.contrib.contenttypes‘,
    ‘django.contrib.sessions‘,
    ‘django.contrib.messages‘,
    ‘django.contrib.staticfiles‘,
    ‘webManage‘, ]

第三步:创建model.py

class后的是表名,继承models.Model,下面写表中的字段名,字段支持多种类型   from django.db import models
# Create your models here.

class page(models.Model):
    pageid=models.IntegerField().primary_key
    chinessname=models.CharField()
    englishname=models.CharField().unique
    pagedesc=models.CharField()

class elements(models.Model):
    elementid=models.IntegerField().primary_key
    pageid=models.ForeignKey(page)
    variablename=models.CharField().unique
    variabledesc=models.CharField()
    find_by_android_option=models.CharField()
    find_by_android_value=models.CharField()
    find_by_iOS_option=models.CharField()
    find_by_iOS_value=models.CharField()   更多关于models的使用,详见官方文档 https://docs.djangoproject.com/en/dev/topics/db/models/  

第四步:同步数据库文件

 检查要修改的数据库字段:python3 manage.py makemigrations   执行命令后,可以看到如下会修改的内容 技术分享 同时会在app的migrations中生成一个000开头的文件,文件内写明了要进行的sql操作   技术分享   修改数据库:python3 manage.py migrate 然后在数据库内会看到新增的表,表名为【app名_class表示的表名】,同时在django_migrations表中添加记录 技术分享   备注:如果settings.py中的INSTALLED_APPS没有填写当前app,找不到app下要同步的models文件  

python3 django连接mysql,同步表结构

标签:roi   表结构   select   问题   记录   pytho   tps   使用   oid   

人气教程排行