Python3 + django 支持 MySQL

最近要做一个数据库的课程设计,嗯,没记错的话是三周的时间(17,18,19)

 

下周还有一个很重要的考试,所以一定要赶快完成。

 

于是。。。
编程语言选择了我最熟练的Python
数据库的话还是用MySQL吧,毕竟有phpmyadmin
整个开发选用了django框架,因为中文文档看起来真的很不错,同时可以节省很多时间

 

纠结过要用python2写还是用python3,万一以后会维护呢!
还是选择3吧!

 

于是,开工。。。
用了一天的时间大致学会了django的基本用法
默认的数据库配置setting.DATABASES,使用的是sqlite3
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

 

但是不熟悉这个哎,也不想去学,所以改用了MySQL
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'database_name',
        'USER': 'database_user',
        'PASSWORD': 'database_pwd',
        'HOST': '',
        'PORT': '',
    }
}

 

测试之后发现ImportError: No module named 'MySQLdb' ,原来是我没有安装MySQLdb这个包,记得以前只在Python2.7中安装过。
于是在网上找有关python3的版本,无果……并没有找到,它好像没有做对python3这方面的开发。

 

替代的包有pymysql,可以通过pip3 install pymysql安装。
然后需要修改的是站点的__init__.py文件,添加代码
import pymysql
pymysql.install_as_MySQLdb()

 

意思就是一个匿名处理啦!
So we can be happy to use python + mysql + django !

  • 16 只已被捕捉
    • 蛋蛋 Chrome | 70.0.3538.110 Windows 10

      你的博客是用django写的吗?我也想做个博客了

      • 千千 Apple Safari | 604.1 iPhone 10_2_1

        文章里是我以前写过的一个,不过功能有点少没有使用