原文章地址: EOSONES博客
本博客前端使用Bootstrap框架设计,后端使用Python-3.7,基于Django-2.1搭建,采用服务器Windows Server 2012,通过IIS部署。
如何从零搭建博客
Django 是使用 Python 编写的一个开源 Web 框架,可以用它来快速搭建一个高性能的网站。如果你是从零开始,而且没有任何相关的语言基础,推荐首先阅读 w3cschool | Django教程学习Django基础知识,如果你只是从零接触Python而已,直接上手项目是公认的学习一门语言的好方法,其中追梦人物的博客教程将会教你搭建一个完整的个人博客。学习Django的过程从要养成查看源码与官方文档的习惯,90%的问题都可以在这里解决。但跨行自学从来不是一件轻松的事情,不仅效率很低,而且解决问题很慢收益且很小,自学一门语言的时间精力有限,如果你做事不是结果导向型,如何把握好兴趣使然的深度与工作必须的效率两者之间的权重问题是关键。
项目源码
项目目录
首先安利一个快速生成如下目录结构的插件 mddir,使用方式也很简单:
首先通过npm安装
>> npm install mddir -g #-g局部安装
cd 到你想生成目录的工程结构,直接运行mddir命令
>> cd X:\myblog
>> mddir
打开工程根目录下出现的名字为directoryList.md的文件,其中就是我们的文件夹目录结构。
|-- Myblog #项目工程
|-- db.sqlite3
|-- manage.py #命令行工具,与该 Django 项目进行交互。
|-- Apps #博客APP功能归纳文件夹
| |-- Comment #博客评论系统APP
| | |-- admin.py
| | |-- apps.py
| | |-- models.py
| | |-- tests.py
| | |-- urls.py
| | |-- views.py
| | |-- __init__.py
| | |-- migrations
| | |-- templatetags
| | | |-- comment_tags.py
| | | |-- __init__.py
| | | |-- __pycache__
| | |-- __pycache__
| |-- Myaccount #用户信息APP
| | |-- admin.py
| | |-- apps.py
| | |-- forms.py
| | |-- models.py
| | |-- tests.py
| | |-- urls.py
| | |-- views.py
| | |-- __init__.py
| | |-- migrations
| | |-- templatetags
| | | |-- User_tags.py
| | | |-- __init__.py
| | | |-- __pycache__
| | |-- __pycache__
| |-- Storm #博客系统app
| | |-- admin.py #Django提供的后台管理
| | |-- apps.py #配置当前app
| | |-- feeds.py #扩展博客系统的RSS订阅
| | |-- models.py #创建博客系统数据库表
| | |-- sitemaps.py #配置网站地图
| | |-- tests.py #单元测试
| | |-- urls.py #博客系统分配的urls
| | |-- views.py #博客系统业务逻辑代码
| | |-- __init__.py
| | |-- migrations #记录数据库操作记录(自动)
| | |-- templatetags #提供自定义过滤器或模板语言,方便传递数据到前端
| | | |-- blog_tags.py
| | | |-- __init__.py
| | | |-- __pycache__
| | |-- __pycache__
|-- media #媒体文件夹
| |-- avatar #头像上传
| |-- editor #编辑器上传的图片
|-- Middleware #自定义的统计网站在线人数中间件
| |-- auth.py
| |-- __pycache__
|-- Myblog #项目的容器(对整个程序进行配置)
| |-- settings.py #该 Django 项目的设置/配置
| |-- urls.py #该 Django 项目的 URL 声明,一份由 Django 驱动的网站"目录"。
| |-- wsgi.py #一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。(依靠WSGI规则封装Socket的模块,可配置Python默认或uwsgi模块)
| |-- __init__.py #一个空文件,告诉 Python 该目录是一个 Python 包
| |-- __pycache__
|-- static #项目的静态文件夹
| |-- admin #上线收集的admin静态文件
| |-- css
| |-- fonts
| |-- images #博客图片地址
| |-- js
| |-- mdeditor #上线收集的mdeditor编辑器静态文件
|-- templates #项目模板
|-- accounts-base.html #用户信息继承页
|-- article.html #
|-- articleList.html #
|-- content-base.html #文章继承页
|-- eosones.html #主站
|-- homepage.html #
|-- project.html #
|-- sponsor.html #
|-- account #修改的allauth插件自带模板