从0到1搭建个人博客-使用Django
写在前面
大家好,首先感谢你能看到这篇文章,你也可能会看到之后完整一系列的文章。我将从这篇文章开始记录我从0到1搭建一个个人博客的完整过程。是的,我现在只是一个新手,嗯我不会Django,也不会HTML
、CSS
、JavaScript
、SQL
,Python也只是会那么一点,但从这篇文章开始我将开始学习这些。
正如我也是个小白一样,看此系列文章你只要有简单的Python基础即可,其它用到的知识我觉得必要的都会在必要的时候在文章中写出,例如Django使用MVC
框架,等需要这部分知识的地方我会将其写出,其它亦如此。
本系列文章每一期我都会开放读者讨论
功能,如果你遇到什么问题都可以留言讨论同时可以让别人借鉴,当然也可以直接私聊我。
Django毕竟是一个Web框架,本系列文章只是以开发一个博客网址为实例,如果这个学会了之后,开发别的类型网站等肯定都可以融会贯通的。因此只要对前端有兴趣的同学都可以看看。
开发环境
PC
:Win10(64bit)
Python版本
:Python 3.8.2
Django版本
:Django 2.2
**虚拟环境(Virtualenv,或venv)**下
IDE
:Pycharm 2020.2 Professional
浏览器
:Google Chrome
Django简介
各种Web开发框架在Python中数不胜数,但Django或许是里面最具有代表性的其中之一。Django是一个开源的重量级Web应用框架,全部由Python写成,它几乎包括了所有Web开发需要用到的模块,例如session管理
、CSRF防伪造请求
、Form表单处理
、ORM数据库对象化
、自己的template language
等。
Django采用了MVC
的软件设计模式,即模型M(Model)、视图V(View)和控制器C(Controller),使得开发复杂、数据库驱动的网站变得更简单。
Django设计理念
松耦合
:Django的目的是使其堆栈中的每个元素都独立于其他。较少编码
:能够使用更少的代码开发。不重复
:一切都应该只在一个地方,而不是一次又一次地重复开发。更快的开发
:尽一切所能,更高速的开发网站。干净的设计
:Django严格维护一个干净的设计在其自己的代码,并可以很容易地遵循最佳Web开发实践。
Django的优势
对象关系映射(ORM)支持
:Django提供数据模型和数据库引擎之间的桥梁,并支持大量的数据库系统,包括MySQL、Oracle、Postgres
等。还可以通过Django-nonrel
支持NoSQL
数据库。多语言
:Django内置国际化系统支持多语种网站。框架支持
:Django内置了对Ajax、RSS、缓存
和其它各种框架的支持。管理GUI
:Django提供了一个用于管理活动的很好的用户界面。开发环境
:Django自带了一个轻量级的Web服务器,方便终端到终端应用的开发和测试。(该服务器只能用于开发测试)
开篇:运行Django服务器
从这里,开始你的第一步。
配置虚拟环境
虚拟环境是Python多版本管理的利器,可以使每个项目环境与其他项目独立开来,保持环境的干净,解决包冲突等奇奇怪怪的问题。你可以将虚拟环境理解为一个隔绝的小系统。
Python3.3以后自带虚拟环境,配置一下即可使用。
首先为我们的Django项目新建一个文件夹,如我在D盘的My_blog
目录中新建了django_project
文件夹。
在此文件夹打开cmd命令行
如图所示:
在命令行中输入配置虚拟环境的命令:
D:\My_blog\django_project> python -m venv env
参数env
即是虚拟环境的放置目录,当运行完这行代码之后,输入:
D:\My_blog\django_project> env\Scripts\activate.bat
输入完毕敲回车之后即可进入虚拟环境,此时命令行内提示符为:
(env) D:\My_blog\django_project>
提示符前的(env)
即说明进入虚拟环境成功。
安装Django
需要说明的是,虚拟环境是和你电脑环境隔绝的,可能你的Windows环境中安装了很多的Python包,但是在虚拟环境中是无法使用的,不信的话你自己输入pip list
看一下。
里面只有pip
和setuptools
。
接下来我们首先需要安装一下Django
,安装方法很简单,输入以下代码:(注意一下此处往后代码片段开头都是:(env) D:\My_blog\django_project>,这不就是命令行提示符显示的字样吗,我只是把命令行内完整代码写出来了,输入的命令可不带提示符。)
(env) D:\My_blog\django_project> pip install -i https://pypi.tuna.tsinghua.edu.cn/simple django==2.2
注意我们使用了清华的Pypi镜像源,这样让你安装的更快一点,敲下回车之后等命令行中出现:
Successfully installed django-2.2 pytz-2020.1 sqlparse-0.4.1
字样说明安装成功。
创建Django项目
在命令行中输入:
(env) D:\My_blog\django_project> django-admin startproject my_blog
运行之后你的django_project
文件夹下应该多出了my_blog
文件夹(当然,你也可以用别的文件夹名字),
其目录结构应该如下所示:
my_blog
│ manage.py
│
└─my_blog
│ settings.py
│ urls.py
│ wsgi.py
└─ __init__.py
这样我们就创建好了Django项目。
运行Django服务器
我们前文说过,Django自带了一个轻量级的Web开发服务器,它的名字是runserver
,这个开发服务器可以让你方便的进行开发测试。
这个开发服务器会自动的检测你文件中代码的更新,并自动加载它,也就是每次写好代码后不需要重新启动服务器,只要刷新下页面就行了。
运行django服务器,首先进入my_blog
文件夹,是含有manage.py
的那个。怎么进入应该会吧哈哈哈,cd
就行。如下:
(env) D:\My_blog\django_project> cd my_blog
进入之后是这样:
(env) D:\My_blog\django_project\my_blog>
这个时候输入如下命令:
(env) D:\My_blog\django_project\my_blog> python manage.py runserver
即启动服务器的意思,这个时候命令行是这样的:
这个时候不要管命令行程序,也不要关了它哈哈哈,接着打开我们的Google Chrome
,在网址栏输入:
http://127.0.0.1:8000/
浏览器是如下界面:
注意哈小火箭是动着的!
**这就说明Django运行起来了!!!**注意一下此时在第一层my_blog
文件夹下出现了db.sqlite3
文件。
恭喜你,你已经完成了从0到1搭建个人博客
的第一篇内容,想要走到终点吗?请紧跟此系列文章。
参考文献:
- https://www.dusaiphoto.com/article/2/
- Python程序设计 / 王学军,胡畅霞,韩艳峰主编 人民邮电出版社,2018.1