美文网首页
Django项目【教育网站】:前期配置

Django项目【教育网站】:前期配置

作者: 一米阳光给的温暖 | 来源:发表于2018-07-21 18:54 被阅读0次

环境:
Django 1.9.8
Python 3.5.2
MySQL 8.0.11

创建项目后在项目根目录下新建以下目录:

static:使用static目录来存放网站的静态文件:js,css,图片等。
log:使用log目录来存放网站的日志文件。
media:使用media目录存放用户上传的图片等资源。
apps:使用apps目录用来存放网站应用。在pycharm中将新建的app文件夹拖入apps文件夹内:会自动生成__init__.py文件表明这是一个包。使得apps文件夹可导入。

apps文件被认为是一个包,可以导入

现在设置项目的全局搜索路径

设置全局后,可以告诉项目导我的网站应用在哪个目录中

不设置的话,导入每个应用都需要指定应用的目录

编辑settings.py,设置apps路径:


设置方法演示

因此我们需要在settings.py中加入这两行代码:

import sys
sys.path.insert(0,os.path.join(BASE_DIR,'apps'))

MySQL数据库配置:

在settings.py中设置数据修改如下:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', #设置为MySQL
        'NAME': 'testdjango',  #使用的哪个数据库
        'USER': 'root',  #数据库账号
        'PASSWORD': 'xxxxxx',  #数据库密码
        'HOST': 'localhost'  #数据库IP,此为本地数据
    }
}

安装MySQL的Python驱动模块:

在 python2 中,使用 pip install mysql-python 进行安装连接MySQL的库,使用时 import MySQLdb 进行使用

在 python3 中,改变了连接库,改为了 pymysql 库,使用pip install pymysql 进行安装,直接导入即可使用

但是在 Django 中, 连接数据库时使用的是 MySQLdb 库,这在与 python3 的合作中就会报以下错误了

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'

解决方法:在__init__.py 文件中添加以下代码即可。

import pymysql
pymysql.install_as_MySQLdb()

额,找了一下却没有找到 install_as_MySQLdb() 这个方法的源码,不过顾名思义应该是让 Django 把 pymysql 当成 MySQLdb 来使用吧

相关文章

网友评论

      本文标题:Django项目【教育网站】:前期配置

      本文链接:https://www.haomeiwen.com/subject/qlyhmftx.html