内容导读
Django框架简介
环境安装与配置
创建第一个项目
Django的MTV架构模式
一、Django框架简介
1、关于Django
Django是使用Python语言编写的一个开源Web应用框架,它遵循MTV架构、鼓励快速开发,是当前较为流行的一种Web开发框架。
- 2003年秋,Django诞生于美国堪萨斯州The World Company公司的World Online部门。
- 2005年夏天,Django框架开发完成,此时Jacob Kaplan-Moss(雅各布•卡普兰•莫斯)加入World Online,致力于推荐Django框架的开源工作。
- 2005年7月,Django框架在BSD开源协议下发布。
- 2008年6月,Django软件基金会成立。
- 2008年9月,第一个Django正式版本Django 1.0发布。
2、Django具备以下几个优点
齐全的功能,完善的文档;
强大的数据库访问组件,灵活的URL映射;
丰富的模板语言,健全的后台管理系统;
完整的错误信息提示,强大的缓存框架,国际化。
二、环境安装与配置
要注意Django与Python 版本的对应关系
说明:在安装 Django 前,系统需要安装并配置好 Python。
1、Windows 下安装 Django
Python 下载地址:Download Python | Python.org,版本为3.12
Django 下载地址:Download Django | Django,版本为5.1
(1)Python 安装(已安装的可跳过)
安装 Python 你只需要下载 python-x.x.x.msi 文件,然后一直点击 "Next" 按钮即可。
安装完成后你需要设置 Python 环境变量。 右击计算机->属性->高级->环境变量->修改系统变量 path,添加 Python 安装地址。
这里使用的是 D:\programd\python3.12,需要根据你实际情况来安装。
(2)Django全局安装与配置
下载 Django 压缩包,解压并和 Python安装目录放在同一个根目录,进入 Django 目录。
执行 python setup.py install,然后开始安装,Django 将要被安装到 Python 的 Lib下site-packages。
或者,使用python的pip包管理工具安装:
py -m pip install Django==5.1
安装完成后如下所示:
然后是配置环境变量,将这几个目录添加到系统环境变量path中。
D:\programd\python3.12\Lib\site-packages\django
D:\programd\python3.12\Scripts
添加完成后就可以使用Django的django-admin.py命令新建工程了。
(3)检查是否安装成功
输入py -m django --version命令检查:
如下图:
或者,在python命令行窗口,输入以下命令进行检查:
>>> import django
>>> django.get_version()
如下图:
如果输出了Django的版本号说明安装正确
2、Linux 上安装 Django
(1)yum 安装方法
以下安装位于 Centos Linux 环境下安装,如果是 Linux 系统是 ubuntu 请使用 apt-get 命令。
默认情况下 Linux 环境已经支持了Python。可以在终端输入Python命令来查看是否已经安装。
Python 3.7.4 (default, Aug 1 2012, 05:14:39)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
(2)安装 setuptools
# Python3 安装
yum install python3-setuptools
完成之后,就可以使用 easy_install 命令安装 django
easy_install django
之后我们在 Python 解释器输入以下代码:
[root@chaoke django]# python
Python 3.7.4 (default, May 15 2014, 14:49:08)
[GCC 4.8.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.VERSION
(3, 0, 6, 'final', 0)
我们可以看到输出了Django的版本号,说明安装成功。
(3)pip 命令安装方法
如果未安装 pip 工具,可执行以下命令安装:
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本
$ sudo python get-pip.py # 运行安装脚本
安装Django:
sudo pip3 install Django -i https://pypi.tuna.tsinghua.edu.cn/simple
指定 Django 的下载版本(5.1可以改成你要的版本):
sudo pip3 install Django==5.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
(4)源码安装方法
下载源码包:Download Django | Django
输入以下命令并安装:
tar xzvf Django-X.Y.tar.gz # 解压下载包
cd Django-X.Y # 进入 Django 目录
python setup.py install # 执行安装命令
安装成功后 Django 位于 Python 安装目录的 site-packages 目录下。
三、创建第一个项目
1、版本匹配
版本说明:
- Python 3.12
- Django5.1
windows下,通过命令python -V查看版本号:
C:\Users\deer2099> python -V
Python 3.12.0rc3
C:\Users\deer2099>py -m django --version
5.1
说明:如果版本不匹配,请卸载后重新安装。
2、创建Django项目
(1)通过开发工具Pycharm创建项目
点击Pycharm的File选New Project:
Django web项目结构:
在Pycharm中运行Django web项目:
终端窗口显示:
浏览器输入 127.0.0.1:8000,效果如下:
(2)通过命令行创建
磁盘中创建项目文件夹,比如:mypython,打开mypython的命令窗口
执行django-admin startproject HelloMe创建HellMe项目
创建完成后查看到项目的目录结构:
目录说明:
- HelloMe: 项目的容器。
- manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
- HelloMe/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
- HelloMe/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
- HelloMe/settings.py: 该 Django 项目的设置/配置。
- HelloMe/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
- HelloMe/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
接下来我们进入 HelloMe目录输入以下命令,启动服务器:
py manage.py runserver 0.0.0.0:8000
运行效果如图:
浏览器输入 127.0.0.1:8000 得到跟上边一样的效果。
说明:按Ctrl+C可以退出服务器,在这里先不要退出。
也可以通过Pycharm工具打开通过命令行生成的项目HelloMe。
3、视图和 URL 配置
在先前创建的 HelloMe 目录下的 HelloMe项目中新建一个 views.py 文件,并输入代码:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello Me!")
接着,绑定 URL 与视图函数。
打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:
from django.urls import path
from . import views
urlpatterns = [
path("", views.hello, name="hello"),
]
目录结构如下:
完成后,在浏览输入127.0.0.1:8000,效果如下:
说明:如果django服务关闭,则输入py manage.py runserver 0.0.0.0:8000重启服务器即可。
urls.py中也可以修改为以下规则:
from django.urls import path
from . import views
urlpatterns = [
path('hello/', views.hello),
]
通过浏览器打开 http://127.0.0.1:8000/hello,输出结果如下:
提示:项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果你已经启动了服务器则不需手动重启。
4、path() 函数
Django的path() 可以接收四个参数,分别是两个必选参数:route、view 和两个可选参数:kwargs、name。
语法格式:
path(route, view, kwargs=None, name=None)
- route: 字符串,定义 URL 的路径部分。可以包含变量,例如
<int:my_variable>
,以从 URL 中捕获参数并将其传递给视图函数。 - view: 视图函数,处理与给定路由匹配的请求。可以是一个函数或一个基于类的视图。
- kwargs(可选): 一个字典,包含传递给视图函数的额外关键字参数。
- name(可选): 为 URL 路由指定一个唯一的名称,以便在代码的其他地方引用它。这对于在模板中生成 URL 或在代码中进行重定向等操作非常有用。
Django2.0以上中可以使用 re_path() 方法来兼容 url() 方法,一些正则表达式的规则也可以通过 re_path() 来实现 。
from django.urls import include, re_path
urlpatterns = [
re_path(r'^index/$', views.index, name='index'),
re_path(r'^bio/(?P<username>\w+)/$', views.bio, name='bio'),
re_path(r'^weblog/', include('blog.urls')),
...
]
四、Django的MTV架构
Python Web项目遵循Django的MTV架构模式,类似于Java Web中的MVC设计模式。
1、MTV架构简介
Django使用MTV架构,类似其它框架的MVC模式,该架构由模型(Model)、模板(Template)、视图(View)三部分组成,各部分的职责如下。
(1)模型:数据操作层,定义数据模型,封装对数据库层的访问。
(2)模板:表现层,负责将页面呈现给用户。
(3)视图:业务逻辑层,调用模型和模板,实现业务逻辑。
2、MTV架构实现
Django项目的数据模型定义在模型文件models.py中,模板文件存储在templates目录(需手动创建与配置)中,业务逻辑存储在视图文件views.py中。
此外Django项目还有一个核心文件urls.py,用于实现路由分发功能。
项目启动后,用户通过浏览器向Web服务器发起请求,Web服务器将请求传递到要处理该请求的Django项目,Django接收用户通过浏览器发起的请求,urls.py文件根据URL地址分发路由,将请求交给views.py中相应的视图。
视图处理请求(此时涉及数据存取),并将处理结果与模板结合生成响应数据返回给Web服务器,服务器将数据返回到浏览器,最终呈现给用户。具体如下图所示。
更多精彩内容请关注本站!