码迷,mamicode.com
首页 > 其他好文 > 详细

Django视图系统(view)

时间:2018-10-09 22:16:57      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:elf   imp   self   使用   请求   view   接受   python 函数   web   

一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。

响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。

无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你当前项目目录下面。

 

 

一. CBV和FBV

  1. FBV是基于函数的view

def add_class(request):
    if request.method == "POST":
        class_name = request.POST.get("class_name")
        models.Classes.objects.create(name=class_name)
        return redirect("/class_list/")
    return render(request, "add_class.html")

  2. CBV是基于类的view

 

from django.views import View


class AddClass(View):

    def get(self, request):
        return render(request, "add_class.html")

    def post(self, request):
        class_name = request.POST.get("class_name")
        models.Classes.objects.create(name=class_name)
        return redirect("/class_list/")

  注意 : 

    使用CBV时, urls.py中的映射关系也要修改.

url(r^add_class/$, views.AddClass.as_view()),

 

Django视图系统(view)

标签:elf   imp   self   使用   请求   view   接受   python 函数   web   

原文地址:https://www.cnblogs.com/dong-/p/9763236.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!