Django项目搭建实战02--数据库配置

上一章我们把项目创建好后,这章主要讲对项目的数据库配置,进行项目数据的存储

1  配置环境 

  1. 准备配置文件目录
    • 新建包,命名为settings,作为配置文件目录
  2. 准备开发和生产环境配置文件
    • 在配置包settings中,新建开发和生产环境配置文件
  3. 准备开发环境配置内容
    • 将默认的配置文件settings.py中内容拷贝至dev.py

配置完成后,视图如下:

2 配置Jinja2模板引擎

使用Jinja2模板引擎

1. 安装Jinja2扩展包

$ pip install Jinja2

 2. 配置Jinja2模板引擎

直接复制原来的,然后进行Jinja2的配置

3. 补充Jinja2模板引擎环境

新建utils包,然后增加jinja2_env.py。在环境中配置如下代码

from jinja2 import Environment
from django.contrib.staticfiles.storage import staticfiles_storage
from django.urls import reverse


def jinja2_environment(**options):
    env = Environment(**options)
    env.globals.update({
        'static': staticfiles_storage.url,  # 获取静态文件的前缀
        'url': reverse,  # 反向解析
    })
    return env

"""
确保可以使用模板引擎中的{{ url('') }} {{ static('') }}这类语句 
"""

3  关系数据库配置

    数据库配置涉及到两种情况,1个是,一个项目只有1个数据库,一个是1个项目有多个数据库

这里先只针对单个数据库的,后续会补充多个数据库的配置方式

1  安装PyMySQL扩展包,django默认配置的是sqlite3,这里较怎么配置mysql

   

2 然后在项目文件的init中,增加下如下代码

3 之后,在setting中,对文件进行配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  # 数据库引擎
        'HOST': '127.0.0.1',  # 数据库主机
        'PORT': ,  # 数据库端口
        'USER': '',  # 数据库用户名
        'PASSWORD': '',  # 数据库用户密码
        'NAME': ''  # 数据库名字
    }
}

4 有些人配置完后,可能出现如下错误

是因为缺少了cryptography这个包,只要安装下就好

5  再进行连接测试,可正常连接

4 非关系数据库配置

这章根据项目需求进行配置,非必选。因为我项目打算弄成平台化,涉及登录,所以

需要redis库来进行缓存处理。所以需要配置redis库

1 首先进行redis库安装

2 这里扩展下,redis本身的安装

  1. 到github上进行版本下载,地址https://github.com/tporadowski/redis/releases
  2. 下载完成后,对文件进行解压
  3. 开启一个cmd窗口,cd到解压完的文件
  4. 执行命令.\redis-server.exe redis.windows.conf
  5. 原窗口不要改动,再启动一个窗口,执行命令 .\redis-cli
  6. 对redis进行测试,如下代表正常安装完

        

3 在django的setting中数据库配置

# redis缓存
CACHES = {
    "default": { # 默认
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/0",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    },
    "session": { # session
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/1",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    },

    "verify_code": { # 验证码
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/2",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    },
}
SESSION_ENGINE = "django.contrib.sessions.backends.cache"
SESSION_CACHE_ALIAS = "session"

4 配置完成,进行测试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值