上一篇记录的是模型设计
,也就是博客展示
的基本功能
,那么这些模型在进行数据迁移的时候就会产生数据。如何有效地保存好这些数据,这就是每一个开发者都值得去斗智斗勇的一件事,如防止跨站攻击
,反爬虫
等。今天内容就是Django框架的数据库选型
问题,其实Django 对各种数据库都提供了很好的支持,包括:PostgreSQL,
MySQL,
SQLite,
Oracle
,在选择这些数据库的时候都可以根据自己的需求去选择。关于SQLite数据库
,它是一种文档型数据库
,是Django默认
自带的,不需要用户去下载,在数据迁移的时候,会直接在项目根目录下产生一个db.sqlite3
的文件。而我在项目中使用的是MySQL数据库,一种关系型数据库。下面就介绍一下如何将Django自带的SQLite换成MySQL:
首先第一步:肯定是需要在当前主机上安装MySQL
,另外要注意的是在网站部署的时候也要在服务器上安装MySQL,否则网站在运行时候肯定是会报错的
sudo apt-get install mysql-server mysql-client
第二步:启动MySQL服务
。先注册一个用户用于登录,然后创建一个数据库名叫做blog
create database blog charset=utf8;
第三步:下载一个Python驱动Mysql的包
。在这里有必要说一下的是Django目前仅支持Python2
版本的Mysqldb
包,如果使用Python3
开发的版本就必须要使用pymysql
的驱动包,它们是有区别的。这样的话是不是Django就不能支持Python3了呢,其实是可以的,只需要在Django项目中的__init__.py
文件加上下面这两行
import pymysql
pymysql.install_as_MySQLdb()
第四步:修改settings.py文件中的DATABASES选项
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'blog',
'USER': 'root',
'PASSWORD': 'password',
'HOST': 'localhost',
'PORT': '3306'
}
}
好了,以上就是Django完美支持Mysql的全部内容。