[Python+Django] 博客网站系统设计及实现(二)之项目创建及数据库连接配置
时间:2023-04-29 21:06:02 | 来源:网站运营
时间:2023-04-29 21:06:02 来源:网站运营
[Python+Django] 博客网站系统设计及实现(二)之项目创建及数据库连接配置:本文为博客管理设计及实现系列文章的一部分,本文基于Python和Django框架最终将实现一个博客网站包括如下模块:
- 文章管理
- 用户管理
- 文章标签栏目管理
- 文章浏览量及热搜管理
- 评论管理
本篇我们介绍Pycharm搭建Python开发虚拟环境并完成博客项目创建:搭建虚拟开发环境
虚拟环境(virtualenv,或venv )是 Python 多版本管理的利器,可以使每个项目环境与其他项目独立开来,保持环境的干净,解决包冲突问题。你可以将虚拟环境理解为一个隔绝的小系统。
我们可以直接在Pycharm中创建一个虚拟环境用于我们项目开发:
进入File->setting
点击设置按钮下的Add按钮
然后在Add Python Interpreter页面指定虚拟环境位置及基础Python程序。
在此界面有两个勾选项
Inherit global site-packages:继承基础Python包中已经安装过的库Make available to all project:其他程序也可使用此虚拟环境至此,我们的虚拟环境已经搭建完成。
创建Django项目
1.新建一个空白Pycharm项目文件夹比如:E:/PycharmProjects
2.打开Pycharm,从Pycharm打开我们刚刚创建的空白文件夹:PycharmProjects
3.在Pycharm的命令行输入界面输入创建Django项目的命令:
django-admin startproject DjangoBlog
至此我们创建一个新的项目: DjangoBlog
数据库创建和连接配置
Django 对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。
Django 为这些数据库提供了统一的调用API。 我们可以根据自己业务需求选择不同的数据库。
MySQL 是 Web 应用中最常用的数据库。本文采用MySQL.
此步骤将数据库设置连接到自己的MySQL数据库,并完成数据库的创建.
1. 数据库创建Django只能操作到数据表级别,不能操作到数据库级别,所以需要手工创建一个数据库:
djangoblog我们可以通过命令行创建一个数据库:
1) 进入mysql安装文件夹的bin 子文件夹目录:
比如:D:/Program Files/mysql-8.0.13-winx64/bin
2) 连接数据库:
mysql -u root -p Enter password:******
3) 连接登录成功后通过命令创建一个数据库:
djangoblogCREATE DATABASE IF NOT EXISTS
djangoblog DEFAULT CHARSET utf8;
或者通过其他的数据库管理工具,比如SQLlog工具创建一个数据库: djangoblog
创建完成后可以通过SQLlog看到对应数据库
2. Django数据库连接配置
Django使用MySQL需要mysql 驱动,如果你没安装 mysql 驱动,可以执行以下命令安装:
pip install pymysql
1) 进入DjangoBlog 项目下的DjangoBlog文件夹,打开setting.py 文件,找到DATABASES配置项:
2) 修改DATABSES配置项为如下内容:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'djangoblog', # 数据库名称 'HOST': '127.0.0.1', # 数据库地址,本机 ip 地址 127.0.0.1 'PORT': 3306, # 端口 'USER': 'root', # 数据库用户名 'PASSWORD': '123456', # 数据库密码 }}
3) Django 使用 pymysql 模块连接 mysql 数据库:
在与 settings.py 同级目录下的 __init__.py 中引入模块和进行配置
import pymysql pymysql.install_as_MySQLdb()
结语
至此,我们创建了一个Django项目DjangoBlog用于我们后续的博客系统开发的程序编写,同时为此项目创建了一个MySQL数据库:djangoblog用于我们程序开发过程中的数据存放和处理。
下一篇我们将开始完成博客的正式功能页面
关键词:创建,项目,数据,配置,连接,实现,系统,设计