django第二次作业:开源项目运行&解读
·
DjangoBlog 是一款基于 Python 3.10 和 Django 4.0 构建的高性能博客平台。它不仅提供了传统博客的所有核心功能,还通过一个灵活的插件系统,让您可以轻松扩展和定制您的网站。无论您是个人博主、技术爱好者还是内容创作者,DjangoBlog 都旨在为您提供一个稳定、高效且易于维护的写作和发布环境。
🛠️ 技术栈
- 后端: Python 3.10, Django 4.0
- 数据库: MySQL, SQLite (可配置)
- 缓存: Redis
- 前端: HTML5, CSS3, JavaScript
- 搜索: Whoosh, Elasticsearch (可配置)
- 编辑器: Markdown (mdeditor)
1. 环境准备
确保您的系统中已安装 Python 3.10+ 和 MySQL/MariaDB。
2. 克隆与安装
git clone https://github.com/liangliangyy/DjangoBlog.git
cd DjangoBlog
pip install -r requirements.txt
如下图:

所有依赖安装成功(包括 Django 5.2、MySQL 连接库、Redis 等)

3. 项目配置
数据库: 打开 djangoblog/settings.py 文件,找到 DATABASES 配置项,修改为您的 MySQL 连接信息。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'djangoblog',
'USER': 'root',
'PASSWORD': 'your_password',
'HOST': '127.0.0.1',
'PORT': 3306,
}
}
创建数据库
# 登录 MySQL(会提示输入密码,输入 135812)
mysql -u root -p
# 然后会进入 mysql> 提示符,粘贴:
CREATE DATABASE `djangoblog` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# 看到 Query OK 后,退出:
exit;
结果如下:

4. 初始化数据库
python manage.py makemigrations
python manage.py migrate
# 创建一个超级管理员账户
python manage.py createsuperuser
结果如下图:
创建管理员账号


5. 运行项目
# (可选) 生成一些测试数据
python manage.py create_testdata
# (可选) 收集和压缩静态文件
python manage.py collectstatic --noinput
python manage.py compress --force
# 启动开发服务器
python manage.py runserver

测试数据创建成功!看到最后的 created test datas
(创建了 14 篇测试文章,创建了 13 个标签,自动通知了百度爬虫)
1.打开http://127.0.0.1:8000/,您应该能看到 DjangoBlog 的首页了!

2.打开浏览器,访问http://127.0.0.1:8000/admin/

总结:
DjangoBlog 是一个基于 Python 3.12 + Django 5.2 开发的功能完备的博客内容管理系统,当前运行的系统已实现文章发布与管理功能,支持通过后台界面创建、编辑和删除文章,每篇文章可设置分类目录和标签便于内容组织;
系统内置用户认证体系,支持注册登录及权限控制,同时预留了 OAuth 接口可对接 GitHub、Google 等第三方登录;评论系统支持嵌套回复和 Markdown 格式,实现读者与作者的互动;全文搜索功能集成 Whoosh 搜索引擎并配合 jieba 中文分词,可快速检索文章内容;SEO 优化模块自动处理 URL 美化、Meta 标签生成,并支持新内容发布时自动通知百度和 Google 搜索引擎;此外系统都通过 Django Admin 后台统一管理。
MVT 架构详解:
Model(模型层):定义博客系统的数据结构(文章、分类、标签等),通过 Django ORM 自动映射为 MySQL 数据库表,负责数据的增删改查操作,无需手写 SQL。
View(视图层):接收用户 HTTP 请求,调用 Model 获取数据,处理业务逻辑(如浏览计数、文章筛选),并将结果传递给 Template 渲染,决定返回何种响应。
Template(模板层):负责页面 HTML 结构定义,使用 Django 模板语言将 View 传递的数据动态渲染为最终网页,实现数据展示与业务逻辑的完全分离。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)