初始Django框架

Django是什么?
开源免费的python高级web框架,内置电池,用于快速开发可靠、安全、可扩展的web应用
源代码地址https://github.com/django/django
django框架是mtv模型,分层次的开发项目,包括模型(Model)、视图(View)和模板(Template)
在这里插入图片描述
Django的安装
方式一:通过命令:pip install django
方式二:源码安装
打开地址:https://pypi.org/,搜索:django,下载源码包到本地解压,然后在执行命令:pyhton setup.py install进行安装
在这里插入图片描述
在这里插入图片描述
检测是否安装成功
在这里插入图片描述
Django项目的创建
执行命令:django-admin startproject [项目名称]
在这里插入图片描述
在这里插入图片描述
启动服务器
进入djang项目下,执行命令:python manage.py runserver
在这里插入图片描述
浏览器访问url:http://127.0.0.1:8000/,打开第一个django程序。
在这里插入图片描述
runserver常用参数
指定端口号命令:python manage.py runserver 9527
指定IP命令:python manage.py runserver 0.0.0.0:9527
ps:需要在settings.py配置ALLOWED_HOSTS,把需要配置的ip地址,加入到列表中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
创建模块
命令:python manage.py startapp [模块名]
在这里插入图片描述
完成第一个页面
第一步:在views.py文件写个函数
在这里插入图片描述
第二步:在urls.py配置规则
在这里插入图片描述
完成后的效果
在这里插入图片描述
什么是视图
一个视图函数,简称视图,是一个简单的 python函数,用来处理http请求;通过path和include配置,将URL和视图函数关系建立起来
def view_name() 定义视图函数
接受一个请求,返回一个响应
视图响应的内容
文本、HTML内容、图像、甚至是404、重定向等
URL的设计
设计简单优雅的url(使用正则表达式、指定参数类型)
URL的常用配置
path()参数解释
route:URL匹配规则
view:视图函数
name:路由的名称
**kwargs:其他参数
include()参数解释
urls:URL匹配规则列表
namespace:命名空间
下面例子解释include的用处:
a.先在模块下也创建urls.py文件,按照规则配置,如下图
在这里插入图片描述
在这里插入图片描述

b.项目下的urls.py文件改动
在这里插入图片描述
c.出来的效果
在这里插入图片描述
在这里插入图片描述
响应HTML内容
在views.py文件写入返回html的函数
在这里插入图片描述
在配置url
在这里插入图片描述
最后效果
在这里插入图片描述
获取URL参数
方式一:获取URL中的指定类型的参数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
方式二:获取URL中正则匹配的参数
修改url路径改成正则格式
在这里插入图片描述
此时在url输入不合法的月份时就无法访问
在这里插入图片描述
方式三:获取GET参数
在views.py文件添加get函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
从文件响应HTML内容
render_to_string()函数:
参数解释:
template_name:模块名称
request:请求对象
context:模板上下文对象(dict)
using:模板引擎名称(如:jinja2)
a.创建templates目录,在目录下创建html文件
在这里插入图片描述
b.使用render_to_string()函数
在这里插入图片描述
c.在项目的settings.py配置html的路径
在这里插入图片描述
d.再配置urls.py文件
在这里插入图片描述
在这里插入图片描述
render()函数
template_name:模块名称
request:请求对象
context:模板上下文对象(dict)
content_type:MIME类型,默认为text/html
status:HTTP状态码
using:模板引擎名称(如:jinja2)
a.在views.py文件添加render函数
在这里插入图片描述
b.配置urls.py
在这里插入图片描述
在这里插入图片描述
ps:
1.可以在不同模块目录下创建templates目录和html文件,如果views.py文件函数中指定的html名称和路径都是相同的话,优先在根目录下的templates目录下查找html;
2.如在模块中找html文件,需要在settings.py文件中INSTALLED_APPS配置模块名称。

在这里插入图片描述
3.settings.py文件的配置TEMPLATES[“APP_DIRS”]:True
在这里插入图片描述
请求响应对象
在这里插入图片描述
在这里插入图片描述

1、获得请求中的请求方式、请求头和请求参数
在这里插入图片描述
在这里插入图片描述
响应打印的内容
在这里插入图片描述
2、获得响应内容
在这里插入图片描述

响应文件
在这里插入图片描述
在这里插入图片描述
响应json
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重定向
1.使用HttpResponseRedirect重定向
使用return HttpResponseRedirect填写新的url地址来实现重定向
在这里插入图片描述
在这里插入图片描述
如果被重定向的地址url路径变更了,则需要手动再修改页面重定向的地址,这样不现实,所以推荐使用视图函数的名称设置
在这里插入图片描述
在这里插入图片描述
2.使用redirect()快捷方式
使用redirect()设置视图函数名称更为的方便实现重定向,当然redirect()也可以设置成url地址,但是不推荐用,也可以填写外部url地址。
在这里插入图片描述
内置的视图及重写
在这里插入图片描述
在这里插入图片描述
如500为例子,在视图函数加raise模拟500异常
在这里插入图片描述
第一步:
把settings.py文件的DEBUG=False
第二步:
在项目中创建views.py文件,添加自定义的500错误页面视图函数(一般会自定义为html页面,添加图片和友好的文字提示)
在这里插入图片描述
第三步:
在urls中配置500错误页面的路径
在这里插入图片描述
重写后的效果:
在这里插入图片描述
重写之前500是展示django默认的页面,如下图:
在这里插入图片描述
static.serve处理静态文件
可直接通过url地址访问midias目录下存放的图片
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
效果:
在这里插入图片描述
基于类的视图
视图是一个可调用对象,可以接受一个请求然后返回一个响应,基于类的视图可以结构化你的视图,可以利用继承和混合重用代码,内置的视图拿来即用,代码更简洁
1.在viwes.py文件添加类视图
在这里插入图片描述
2.url.py文件添加地址
在这里插入图片描述
在这里插入图片描述

效果:
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值