400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

Django视图(View)-创新互联

Django 视图

声明:文章部分内容来源https://www.cnblogs.com/maple-shaw/articles/9285269.html

站在用户的角度思考问题,与客户深入沟通,找到新和网站设计与新和网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟空间、企业邮箱。业务覆盖新和地区。
简单的视图
from django.http import HttpResponse
import datetime
#从 django.http模块导入了HttpResponse类,以及Python的datetime模块。

def current_datetime(request):
    #定义了current_datetime函数。它就是视图函数。每个视图函数都使用HttpRequest对象作为第一个参数,并且通常称之为request。
    now = datetime.datetime.now()
    #获取当前时间
    html = "It is now %s." % now
    #定义一个变量等于后面的字符串
    return HttpResponse(html)
#返回一个HttpResponse对象,其中包含生成的响应。每个视图函数都负责返回一个HttpResponse对象。

Django使用请求和响应对象来通过系统传递状态。

当浏览器向服务端请求一个页面时,Django创建一个HttpRequest对象,该对象包含关于请求的元数据。然后,Django加载相应的视图,将这个HttpRequest对象作为第一个参数传递给视图函数。

每个视图负责返回一个HttpResponse对象。
CBV和FBV
FBV:基于函数的视图
from django.http import HttpResponse
#导入HttpResponse模块,这个模块可以帮我们把字符串返回给网页
def add_class(request):
    if request.method == "POST":
        return HttpResponse("POST")
    return HttpResponse('GET')
#实现效果,如果发过来的是GET请求就返回GET,如果是POST请求就返回POST
CBV:基于类的视图
from django.http import HttpResponse
from django.views import View
#导入HttpResponse和View导入视图模块,方便我们创建类时继承View
class AddClass(View):

    def get(self, request):#处理get请求
        return HttpResponse('get')

    def post(self, request):#处理post请求
        return HttpResponse('post')
#实现效果,如果发过来的是GET请求就返回GET,如果是POST请求就返回POST
#在url中的修改配置
url(r'^add_class/$', views.要使用的类的名字.as_view())
给视图加装饰器
给FBV加装饰器
给CBV加装饰器
request对象
request属性 作用
request.methot请求方式
request.path_infoURL的路径 不包含ip和端口 不包含参数
request.POSTPOST请求提交的数据
request.body请求体, byte类型 request.POST的数据就是从body里面提取到的
request.FILES上传的文件
request.META请求头
request.COOKIES后面讲
request.session后面讲
request.encoding表示提交的数据的编码方式(如果为 None 则表示使用 DEFAULT_CHARSET 的设置,默认为 'utf-8')。
request方法 作用
request.get_full_path()URL的路径 不包含ip和端口 包含参数
request.is_ajax()判断是不是ajax请求
Httpresponse对象
Httpresponse属性 作用
HttpResponse.content响应内容
HttpResponse.charset响应内容的编码
HttpResponse.status_code响应的状态码

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文标题:Django视图(View)-创新互联
标题链接:http://mzwzsj.com/article/ggjpg.html

其他资讯

让你的专属顾问为你服务