当前位置: 首页 > 网络应用技术

Django视图功能对“三剑手”做出响应

时间:2023-03-06 11:22:13 网络应用技术

  Django视图响应请求:HTTP响应(),Render(),redirect(),经常使用。它们被称为视图功能的“三剑手”。

  django.shortCuts模块提供了Render()函数。它的功能是生成一个HTTP响应对象,并基于传递给模板文件的字典类型返回。

  功能格式为

  Redirect()函数接收一个参数,表明浏览器跳到指定的URL;此参数可以是数据模型(模型)对象,视图函数名称或URL。

  Redirect()函数将调用数据模型中定义的get_absolute_url()函数,并获得该函数返回的URL值,然后跳到URL。

  例子

  urls.py:

  py:

  反向()是URL反向解析函数。其第一个参数的值是“ depdetail”,它是depdetail名称的URL配置项。反向分析过程是:在test_view urls.py中找到当前应用程序的配置项。反向()函数将找到相应的URL。根据字典类型参数传递给它(kwargs = {'dep_id':seld.pk})组合,最后分析完整的URL。

  Views.py:

  在视图函数test_redirect()中有一个redirect()函数。此处运行的RateT()函数运行过程分为以下3个步骤。

  redirect()函数通过视图函数名称和视图函数参数和重定向到此URL。

  RETIRECT()函数的执行过程是首先逆转URL,查找与URLS.PY文件中URL相对应的视图函数,并执行视图函数depdetail()。您可以以此方式理解它,并且直接通过redirect()直接调用视图函数depdetail()。

  REDIRECT()函数直接打开该URL指向的网页。参数具有http://作为前缀为完整的URL,例如:return redirect('http://127.0.0.0.1:8000/dep/2/')和返回重定向('http:// url/')本质

  但是,如果没有http:// and https://,redirect()函数将在urls.py file.to中找到匹配。

  返回重定向('/dep/66/')