浅谈django的render函数的参数问题

 更新时间:2018年10月16日 10:16:55   作者:慢慢的踏实走  
今天小编就为大家分享一篇浅谈django的render函数的参数问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

hello.html 文件代码如下:

HelloWorld/templates/hello.html 文件代码:
<h1>{{ hello }}</h1>

HelloWorld/HelloWorld/view.py 文件代码:

# -*- coding: utf-8 -*-
 
#from django.http import HttpResponse
from django.shortcuts import render
 
def hello(request):
 context   = {}
 context['hello'] = 'Hello World!'
 return render(request, 'hello.html', context)

ontext 字典中元素的键值 "hello" 对应了模板中的变量 "{{ hello }}"。

一旦你创建一个 Template 对象,你可以用 context 来传递数据给它。 一个context 是一系列变量和它们值的集合。

context 在 Django 里表现为 Context 类,在 django.template 模块里。它的构造函数带有一个可选的参数: 一个字典映射变量和它们的值。 调用 Template 对象 的 render() 方法并传递 context 来填充模板:

>>> from django.template import Context, Template

>>> t = Template('My name is {{ name }}.')

>>> c = Context({'name': 'nowamagic'})

>>> t.render(c)

u'My name is nowamagic.'

我们必须指出的一点是,t.render(c) 返回的值是一个 Unicode 对象,不是普通的 Python 字符串。 你可以通过字符串前的 u 来区分。 在框架中,Django 会一直使用 Unicode 对象而不是普通的字符串。 如果你明白这样做给你带来了多大便利的话,尽可能地感激 Django 在幕后有条不紊地为你所做这这么多工作吧。 如果不明白你从中获益了什么,别担心。你只需要知道 Django 对 Unicode 的支持,将让你的应用程序轻松地处理各式各样的字符集,而不仅仅是基本的A-Z英文字符。

from django.shortcuts import render

help文档中描述如下:

render(request, template_name, context=None, content_type=None, status=None, using=None)

Returns a HttpResponse whose content is filled with the result of calling django.template.loader.render_to_string() with the passed arguments.

此方法的作用---结合一个给定的模板和一个给定的上下文字典,并返回一个渲染后的 HttpResponse 对象。

通俗的讲就是把context的内容, 加载进templates中定义的文件, 并通过浏览器渲染呈现.

参数讲解:

request: 是一个固定参数, 没什么好讲的。

template_name: templates 中定义的文件, 要注意路径名. 比如'templates\polls\index.html', 参数就要写‘polls\index.html'

context: 要传入文件中用于渲染呈现的数据, 默认是字典格式

content_type: 生成的文档要使用的MIME 类型。默认为DEFAULT_CONTENT_TYPE 设置的值。

status: http的响应代码,默认是200.

using: 用于加载模板使用的模板引擎的名称。

以上这篇浅谈django的render函数的参数问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python:type、object、class与内置类型实例

    Python:type、object、class与内置类型实例

    今天小编就为大家分享一篇Python:type、object、class与内置类型实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python 时间操作例子和时间格式化参数小结

    Python 时间操作例子和时间格式化参数小结

    这篇文章主要介绍了Python 时间操作例子,例如取前几天、后几天、前一月、后一月等,需要的朋友可以参考下
    2014-04-04
  • python用pip install时安装失败的一系列问题及解决方法

    python用pip install时安装失败的一系列问题及解决方法

    这篇文章主要介绍了python用pip install时安装失败的一系列问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • python数学建模(SciPy+ Numpy+Pandas)

    python数学建模(SciPy+ Numpy+Pandas)

    这篇文章主要介绍了python数学建模(SciPy+ Numpy+Pandas),文章基于python的相关资料紧接上一篇文章内容展开主题详情,需要的小伙伴可以参考一下
    2022-07-07
  • 详解Python中 __get__和__getattr__和__getattribute__的区别

    详解Python中 __get__和__getattr__和__getattribute__的区别

    __get__、__getattr__、__getattribute都是访问属性的方法,但作用不太相同,这里我们就来详解Python中 __get__和__getattr__和__getattribute__的区别:
    2016-06-06
  • MediaPipe API实现骨骼识别功能分步讲解流程

    MediaPipe API实现骨骼识别功能分步讲解流程

    MediaPipe是用于构建多模态(例如视频、音频或任何时间序列数据)、跨平台(即eAndroid、IOS、web、边缘设备)应用ML管道的框架。这篇文章主要介绍了MediaPipe API实现骨骼识别功能分步流程
    2022-09-09
  • python中lambda()的用法

    python中lambda()的用法

    这篇文章主要介绍了python中lambda()的用法,在python中有一个匿名函数lambda,匿名函数顾名思义就是指:是指一类无需定义标识符(函数名)的函数或子程序,需要的朋友可以参考下
    2017-11-11
  • python实现远程通过网络邮件控制计算机重启或关机

    python实现远程通过网络邮件控制计算机重启或关机

    这篇文章主要为大家详细介绍了python实现远程通过网络邮件控制计算机重启或关机,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • python实现五子棋小程序

    python实现五子棋小程序

    这篇文章主要为大家详细介绍了python实现五子棋小程序,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • python+opencv实现车道线检测

    python+opencv实现车道线检测

    这篇文章主要为大家详细介绍了python+opencv实现车道线检测,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-02-02

最新评论