request可以直接在前端用,不需要在render里再定义。
request.body //前端页面数据内容的原生值。如果前端不是从POST,GET,FILES里面获取的数据,就从body里获取
request.POST //从request.body里拿数据再封装到request.POST里面
request.FILES //从request.body里拿数据再封装到request.FILES里面
request.GET //从request.body里拿数据再封装到request.GET里面
request.XXX.getlist //获取列表
request.post.getlist //获取列表
request.Meta (request headers) //获取请求头相关的信息。
request.method //请求方法
request.path_info //获取URL
request.COOKIES //获取cookies
cookie信息或在rep里添加的键值对将会写到response headers里面
a= 'python'
rep = HttpResponse(...) 或 rep = render(request, ...)或rep =redirect('/index/')
a= 'python'
rep = HttpResponse(a)
rep['name'] = 'zhou'
rep.set_cookie()
return rep
HttpResponse可以返回字节和字符串
def index(request): from django.core.handlers.wsgi import WSGIRequest print(type(request)) print(request.environ) for k,v in request.environ.items(): //查看所有用户请求信息
print(k,v) print(request.environ['HTTP_USER_AGENT']) //查看请求终端类型
return HttpResponse('OK')
用HttpResponse发送图片
urls
url(r'^image.html', views.get_image),
视图函数
def get_image(request): with open('static/imgs/16.jpg','rb') as fp: data = fp.read() return HttpResponse(data)
前端html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <img src="/image.html"> </body> </html>
CBV
实例:
视图函数
from django.views import View class Home(View): def dispatch(self, request, *args, **kwargs): print('before') result = super(Home,self).dispatch(request,*args,**kwargs) print('after') return result def get(self,request): # GET方式提交 print('get') return render(request,'home.html') def post(self,request): # POST方式提交 print('post') return render(request,'home.html')
urls
urlpatterns = [ url(r'^home/', views.Home.as_view()), ]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?