Django框架的基本应用
1. Django框架的基本介绍
Django是一个开放源代码的Web应用框架,由Python语言写成,采用了MVT的框架模式,即模型M、视图V和模板T。
MVT全名是ModelViewTemplate,而Python的Web开发框架Django是属于MVT模式。实际上,Django的MVT模式本质上与MVC模式基本没有什么差别,它也是各组件之间为了保持松耦合关系,只是定义上有一些不同,Django的MVT分别代表如下:
M | M是Model的简称,与MVC中的M功能相同,主要用于负责和数据库交互,进行数据处理。 |
V | V是View的简称,与MVC中的C功能相同,主要用于接收请求,负责业务逻辑,并在适当时调用Model和Template。 |
T | T是Template的简称,负责封装并构造要返回的html。 |
2. 一个简单的Django程序
2.1 创建项目
创建项目的命令如下:
django-admin startproject + 项目名称
下面我创建了一个“myweb”的项目:
创建好的项目由以下两部分组成:
(1)manage.py文件是一个命令行工具,可以使用多种方式来对Django项目进行交互;(2)myweb/myweb目录是项目真正的Python包,下面来简单介绍一下上述中myweb/myweb下的各个主要文件的作用,如下表:
__init__.py | 一个空文件,它用于告知Python(且只对于Python),这个目录应该被看做一个Python包。 |
settings.py | 用于项目设置或配置。 |
urls.py | 项目创建的各个环节与要调用的函数,都要在此文件中进行URL声明。 |
wsgi.py | 若需要部署项目在WSGI协议上,则此文件是项目与WSGI协议兼容的Web服务器入口。 |
2.2 开启服务器
开启服务器的命令如下:
python manage.py runserver[ip:port]
需要注意:①可以不写ip与port值,此时默认IP地址为本机地址、端口号为8000;②此服务器是一个纯Python语言编写的轻量级Web服务器,仅在开发阶段会使用。
开启服务器时要在项目目录路径下开启
当成功开启服务器后,则可以打开浏览器并输入网址“127.0.0.1:8000”用于打开默认页面,显示如下:
2.3 创建视图----->创建一个HelloWorld的网页页面
我们要在startproject制作的myweb文件夹中,创建一个叫做views.py的空文件,也就是在__init__.py这些文件的同级目录中:
在views.py中写入的代码:
from django.http import HttpResponsedef hello(request):# request参数必填return HttpResponse("HelloWorld.")
从django.http模块导入HttpResponse类。接下来,定义了一个叫做hello()的视图函而每个视图函数至少要有一个参数,通常被叫作request。这是一个触发这个视图、且包含当前Web请求信息的对象,是类django.http.HttpRequest的一个实例。在这个示例中,我们虽然不使用request做任何事情,然而它仍然得是这个视图的第一个参数。然后返回了一个HttpResponse对象,这个对象包含了“HelloWorld”文本信息。
2.4 配置URL
接下来需要通过一个详细描述的URL来显式的告诉它并且激活这个视图。为了绑定视图函数和URL,我们就需要使用到URLconf。
URLconf就像是Django所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表。你就是以这种方式告诉Django,对于这个URL可以调用这段代码,对于那个URL则可以调用那段代码。
接下来需要对urls.py文件做一些修改,并让它能识别http://127.0.0.1:8000/hello/这个URL。首先使用from.importviews导入views.py模块,然后在urlpatterns列表后加上如下代码即可:
from django.conf.urls import url
from django.contrib import adminfrom .views import hellourlpatterns = [# urls.py中默认的一个路径url(r'^admin/', admin.site.urls),# 当访问http://127.0.0.1:8000/hello/路径时,会执行hello方法url(r'^hello/',hello)
]
开启服务后,输入'http://127.0.0.1:8000/hello/'就可以显示出Hello World界面
到这里,我们就实现了一个简单的Django程序。
Django框架的基本应用相关推荐
- Django框架之第二篇
Django框架之第二篇 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). view ...
- Windows上python开发--2安装django框架
Windows上python开发--2安装django框架 分类: 服务器后台开发2014-05-17 21:22 2310人阅读 评论(2) 收藏 举报 python django 上一篇文章中讲了 ...
- Python技术学习之Django框架设计思想
Python是目前比较流行的计算机编程语言,据用丰富和强大的库,被称为胶水语言,能够把用其他语言制作的各种模块很轻松地联结在一起. Python功能强大,用途广泛,可广泛应用于云计算.web开发.科学 ...
- django框架使用mysql报错,及两种解决方法
1.django框架 settings.py文件中部分代码: DATABASES = {# 'default': {# 'ENGINE': 'django.db.backends.sqlite3',# ...
- django框架--路由系统
目录 一.路由系统理解 二.路由系统功能划分 三.路由表创建 创建工具 二级路由 路由别名 动态路由及重定向 四.自定义错误页面 五.图示路由系统在框架中的定位 六.路由系统的进阶想法 一.路由系统理 ...
- Python3搭建Django框架浅析
前言 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django 是一个开放源代码的 Web 应用框架,由 Pyt ...
- Django框架学习索引
索引目录 1.Django介绍与安装 2.Django流程及模式 3.Django基本配置 4.Django模板(Templages) 1.Django的介绍和安装 3.Django框架模式 4.数据 ...
- Django 框架入门篇(安装与创建项目)
什么是Django框架? 官方定义:Django是一个高级Python Web框架,鼓励快速开发和简洁实用的设计.它由经验丰富的开发人员构建,可以解决大部分Web开发的麻烦,因此您可以专注于编写应用程 ...
- 第九章 Django框架——csrf请求伪造和csrf_token使用
第九章 Django框架--csrf请求伪造和csrf_token使用 一.csrf请求伪造 二.csrf_token使用 三.简单的csrf_token应用 四.Ajax使用csrf_token 一 ...
- Python Django框架入门第一课
Python Django框架入门 1.Django简介 Django使用python开发的一个免费的Web框架,几乎囊括了Web应用的方方面面,用于快速搭建高性能.优雅的网站. 2.配Django运 ...
最新文章
- 入门一班 20180917 软硬连接
- Redis:redis入门
- Java Web之文件的上传及下载
- RDC Hydrogen
- ORA-20446: The owner of the job is not registered ORA-06512: at SYSMAN.MGMT
- Linux怎么查询全部容器时间,linuxea:如何单单修改docker容器的系统时间
- 结尾的单词_22个以“ez”结尾的西语单词,你掌握了吗?
- OpenVINO安装步骤
- linux 神奇命令,Linux 命令神器:lsof 入门
- Proteus 8.6 SP2 Pro 汉化破解版(附破解文件+汉化包+安装教程) 兼容win10
- pip安装:Cannot uninstall ''. It is a distutils installed project and thus we cannot accurately....解决办法
- vue在组件内实现对图标的显示与隐藏
- 有助于睡眠的产品,失眠一定要知道的几样东西
- python求全排列
- 一种实现ISA/IEC 62443操作技术标准的零信任应用简化模型
- 被智商检测器侮辱之后,我直接怒开PyCharm(下)
- nero刻录下载_Nero的3种替代品,可用于Linux CD和DVD刻录
- 获取PalmOS版本号的问题
- 好多流行歌曲的英文版
- linux查看网络|查看端口|查看路由|查看ip
热门文章
- Artificial Intelligence for the Metaverse: A Survey
- 2017 计蒜之道 初赛 第一场 阿里的新游戏 题解
- 公云(3322)动态域名指定ip解析脚本
- 第07章 图形操作 · 7.2 绘制图形(2)
- 计算机英语MDD英文全称,欧盟医疗器械指令 mdd 93-42-eec(中英文).pdf
- Oracle 分页查询 rownum 和 offset
- 如何快速地将CAD转换成Excel?
- 计算机基础论文任务书,《计算机基础项目任务书》.doc
- Python学习笔记 之 从入门到放弃
- 我经常用的一款切图工具