Django( 学习第四部 Django的views视)
2024-09-02 16:40:48
目录
视图层
JsonResponse对象
前端序列化
JSON.stringify() json.dumps()
JSON.parse() json.loads() 基础版(dic)
import jsom
def add(request):
a = {'12':'八嘎'}
b = json.dumps(a,ensure_ascii=False)
return HttpResponse(b) 进阶版(dic)
from django.http import JsonResponse def add(request):
a ={'你好':123,123:'夏一一'}
return JsonResponse(a,json_dumps_params={'ensure_ascii':False}) #原型化输出 (list) def add(request):
a = [123,'你好']
return JsonResponse(a,safe=False)
原型化输出没有解决
form 表单上传文件及后端操作
html部分
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="" method="post" enctype="multipart/form-data">
<p>username:<input type="text" name="username"></p>
<p>file:<input type="file" name="file"></p>
<input type='submit'>
</form>
</body>
</html>
视图函数部分
def upload(request):
if request.method =="POST":
print(request.FILES)
file_obj = request.FILES.get('file')
print(file_obj.name)
with open (file_obj.name,'wb') as f:
for i in file_obj.chunks():
f.write(i)
return render(request,"form.html")
request对象方法
''''
request.method #获取请求方式
request.POST #获取post请求
request.GET #获取get请求
request.FILES #获取文件 request.path #获用户输入的路由
request.path_info #获用户输入的路由
request.get_full-path() #获用户输入的路由,以及所携带对的参数 request.body #原生浏览器发来的二进制数据(了解)
'''
FBV与CBV
# 视图函数可以是类也可以是函数 #FBV
def index(request):
return HttpResponse('index') #CBV
from django.views import View class Mylogin(View):
def get(self,request):
return HttpResponse('get方法')
def post(self,request):
return HttpResponse('post方法') CBV 的路由匹配 path('login/',views.Mylogin.as_view()) '''
FBV和CBV各有千秋
CBV的特点: 能够直接获取请求方式,并根据请求方式不同匹配到对应的方法执行 ''' CBV原码剖析
(没搞懂,后期补存 加油liuun)
最新文章
- R语言:常用统计检验
- PHP打印测试,PHP调试技巧
- php万年历
- jQuery mobile 前台设计中的css em的使用。
- 算法库:基础线性代数子程序库(Basic Linear Algebra Subprograms,BLAS)介绍
- 位图文件格式及linux下C语言来操作位图文件
- Django模型修改及数据迁移
- 关于自然常数e的理解
- iPhone、iPad默认按钮样式问题
- mysql 创建临时节点
- 依赖注入和IOC
- github 自学文档 希望可以给初学的人一些帮助
- EasyMvc--让MVC区域开发更Easy(提供源码下载)
- O(nlogn)算法,最长上升子序列,,非动规
- pip相关工具使用小结
- [codeforces 901E] Cyclic Cipher 循环卷积-Bluestein&#39;s Algorithm
- STM32L1 串口相应驱动开发
- oracle数据库添加新用户
- WPF编程,通过Path类型制作沿路径运动的动画一种方法。
- mysql集群搭建,主主复制