美文网首页
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