zoukankan      html  css  js  c++  java
  • vs2017 + Python3.6 +Django1.11 连接mysql数据库

      不废话直接来。

      vs2017创建一个新的python web项目之后默认链接数据库是sqlite。但是我就想连接到Mysql 上面玩,于是开始倒腾了。下面是步骤

      1.修改settings.py 文件需要修改两处

      第一处:

    INSTALLED_APPS = ['app',
        # Add your apps here to enable them
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'PythonDjangoPro',] #这一行必须是你创建的web项目名称

      第二处:

    DATABASES = {
        #'default': {
            #'ENGINE': 'django.db.backends.sqlite3',
            #'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
            
        #}
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'HOST': '127.0.0.1',
            'PORT': '3306',
            'NAME': 'root',
            'USER': 'root',
            'PASSWORD': 'root',
        }
    }

    现在就要处理一个很关键的问题,因为需要添加pymysql到项目python包中

    然后咱们需要配置项目加载识别链接数据库方式。在项目路径下找到 __init__.py

    #coding:utf-8
    import pymysql
    pymysql.install_as_MySQLdb()

    好了咱们现在要去 app/models.py 创建需要创建到数据库中的实体,在models.py中代码如下

    #coding:utf-8
    from django.db import models
    class User(models.Model):
        nickname = models.CharField('昵称', max_length=150)
        openid = models.CharField('ID', max_length=128, primary_key=True)
        head = models.URLField('头像')
        gender = models.CharField('性别', max_length=2, default='保密') 

    现在配置修改到现在就很想跃跃欲试一下了。但是别急肯定报错,我不想写出来错误,我继续实现正确配置方式。因为现在mysqlclient 肯定出现连接bug,因为版本问题,其实就是有一个版本型号判断在搞鬼

    现在打开你python安装目录,依此打开 :X:Program Files (x86)pythonLibsite-packagesdjangodbackendsmysql  找到base.py 用你饥渴难耐的vs2017编辑器注释掉这段该死的代码:

    if version < (1, 3, 3):
        raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)

    对,是直接注释掉

    好了,我们开始一本正经实现一次通过manage.py 实体类创建表到mysql数据库

    现在你需要这样

     然后在打开的项目目录下面按住shit键,打开右键菜单

    现在你需要依此输入一下代码:

    python manage.py makemigrations
    
    python manage.py migrate

    然后你会看到很多OK

    打开Mysql数据库可视化界面看看数据库是不是有东西(表)

     好啦,剩下的就自由发挥吧

    卧薪尝胆饮咖啡~~

  • 相关阅读:
    IconRes提供免费高质量的Material风格android官方图标库
    android中的所谓观察者模式
    Android总结篇——Intent机制详解及示例总结
    SpringMVC注解@initbinder解决类型转换问题
    ubuntu16.04上安装tomcat7
    ImportError: No module named corsheaders
    linux 网卡
    工控机安装Ubuntu14.04
    python2安装django
    Ubuntu14.04 terminal添加右键
  • 原文地址:https://www.cnblogs.com/wortliu/p/9237753.html
Copyright © 2011-2022 走看看