一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。
响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。
无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你当前项目目录下面。大家约定成俗将视图放置在项目(project)或应用程序(app)目录中的名为views.py的文件中。
FBV和CBV
FBV:基于函数的视图
CBV:基于类的视图
创建一个类步骤:
1.创建一个类 继承 from django.views import View
2.覆写get
和 post
方法,(注意传递request参数)
- 当浏览器是get请求的时候,默认调用的是get()方法;
- 当浏览器是post请求的时候,默认调用的是post()方法;
- 注意:get()、post()方法必须要声明出形参
request
.
路由中使用方式:模块名.类名.as_views()
注意:CBV和FBV同级的,并且根据个人习惯使用不同
from django.urls import path,include
from app01 import views
urlpatterns = [
path('login2/',views.Login2.as_view()),
]
views.py 文件:
from django.shortcuts import render,HttpResponse,redirect
from django.views import View
class Login2(View):
def get(self,request):
return render(request,'app01/login2.html')
def post(self,request):
name=request.POST.get('uername')
password=request.POST.get('pwd')
return HttpResponse('sucess.....')