你好,我是goldsunC
让我们一起进步吧!
从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搭建个人博客`的第一篇内容,想要走到终点吗?请紧跟此系列文章。
参考文献:
-
Python程序设计 / 王学军,胡畅霞,韩艳峰主编 人民邮电出版社,2018.1
走在路上
goldsunC