0
点赞
收藏
分享

微信扫一扫

Django框架|个人博客网站小项目

天天天蓝loveyou 2022-01-21 阅读 45

Django框架|个人博客网站小项目

一、创建工程

1. 创建源码远程仓库:blog

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2. 克隆远程仓库

在这里插入图片描述
在这里插入图片描述

3. 创建工程

(1)进入本地仓库目录

cd blog/

(2)创建博客项目虚拟环境,并在此项目下安装Django框架

mkvirtualenv -p python3 blog

pip install django==2.2

(3)创建博客项目工程

django-admin startproject blog

(4)运行程序,测试结果

在这里插入图片描述
在这里插入图片描述
如图,Django工程创建成功!
Ctrl+C停止工程

4. 提交代码

cd ..
git add .
git commit -m 'createproject'
git push

在这里插入图片描述

2. 工程配置

(1)配置Mysql数据库

进入虚拟环境blog

workon blog

链接Mysql

mysql -uroot -p123123 //其中root是用户名,123123是密码(根据自己的mysql)

新建Mysql数据库:blog

create database blog charset=utf8;

新建Mysql用户:blog

create user huwei identified by '123123'; //其中huwei是用户名,123123是密码(自定义)

授权用户huwei访问blog数据库

grant all on blog.* to 'huwei'@'%';

授权结束后,刷新特权

flush privileges;

使用pycharm打开桌面的blog下的blog文件夹
在这里插入图片描述
配置Python Interpreter ,File ——> Settings ——> Project: blog ——> Python Interpreter
在这里插入图片描述
打开settings.py,配置Mysql


在这里插入图片描述
改为:

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

运行该Django项目
在这里插入图片描述
Django中操作Mysql数据库需要驱动程序MySQLdb,而目前项目虚拟环境中没有驱动程序MySQLdb

MySQLdb只适用于Python2.x的版本,Python3.x的版本中使用PyMySQL代替MySQLdb,故应该安装PyMySQL扩展包

安装PyMySQL驱动程序

在工程同名子目录下的__init__.py文件中,添加如下代码:

import pymysql
pymysql.install_as_MySQLdb()

配置完成后,运行程序,测试结果

在这里插入图片描述
复制网址,在浏览器打开
在这里插入图片描述
配置成功!

提交配置修改
在这里插入图片描述
在这里插入图片描述

(2)配置Redis数据库

安装Django-redis扩展包

pip install django-redis //注意是安装在虚拟环境下,可参考前面介绍的三种方法

打开settings.py,在末尾加入以下代码,配置Redis

CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/0",  # 0号库
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    },
    "session": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/1",  # 1号库
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    },
}
# session由数据库存储改为redis
SESSION_ENGINE = "django.contrib.sessions.backends.cache"
SESSION_CACHE_ALIAS = "session"

启动redis-server,测试

在这里插入图片描述
在这里插入图片描述
安装django-redis扩展包
在这里插入图片描述
在这里插入图片描述
配置成功!

(3)配置日志

新建logs文件夹
在这里插入图片描述

打开settings.py,在末尾加入以下代码,配置日志

#日志
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,  # 是否禁用已经存在的日志器
    'formatters': {  # 日志信息显示的格式
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(module)s %(lineno)d %(message)s'
        },
    },
    'filters': {  # 对日志进行过滤
        'require_debug_true': {  # django在debug模式下才输出日志
            '()': 'django.utils.log.RequireDebugTrue',
        },
    },
    'handlers': {  # 日志处理方法
        'console': {  # 向终端中输出日志
            'level': 'INFO',
            'filters': ['require_debug_true'],
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        },
        'file': {  # 向文件中输出日志
            'level': 'INFO',
            'class': 'logging.handlers.RotatingFileHandler',
            'filename': os.path.join(BASE_DIR, 'logs/blog.log'),  # 日志文件的位置
            'maxBytes': 300 * 1024 * 1024,
            'backupCount': 10,
            'formatter': 'verbose'
        },
    },
    'loggers': {  # 日志器
        'django': {  # 定义了一个名为django的日志器
            'handlers': ['console', 'file'],  # 可以同时向终端与文件中输出日志
            'propagate': True,  # 是否继续传递日志信息
            'level': 'INFO',  # 日志器接收的最低日志级别
        },
    }
}

编辑urls.py
在这里插入图片描述
运行项目,logs文件夹下多出一个blog.log文件,访问网址,然后即可查看blog.log文件的日志

未完待更!!!

举报

相关推荐

0 条评论