Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在模板内使用Django视图变量_Python_Django_Templates_Views - Fatal编程技术网

Python 在模板内使用Django视图变量

Python 在模板内使用Django视图变量,python,django,templates,views,Python,Django,Templates,Views,这是一个相当基本的问题(我是Django新手),但在模板中使用视图中的变量集时遇到了问题。如果我在视图(即h=“hello”)中初始化字符串或列表,然后尝试在模板中调用它: {{h} 既没有输出也没有错误。类似地,如果我试图在模板中使用一个不存在的变量: {{ asdfdsadf }} 再次没有报告错误。这正常吗?以及如何在模板中使用变量。谢谢 是的!这是正常的。模板中的此类错误会自动失败,这在Django中是意料之中的 要正确呈现模板,请使用render\u-to\u-response('y

这是一个相当基本的问题(我是Django新手),但在模板中使用视图中的变量集时遇到了问题。如果我在视图(即h=“hello”)中初始化字符串或列表,然后尝试在模板中调用它:
{{h}

既没有输出也没有错误。类似地,如果我试图在模板中使用一个不存在的变量:

{{ asdfdsadf }}

再次没有报告错误。这正常吗?以及如何在模板中使用变量。谢谢

是的!这是正常的。模板中的此类错误会自动失败,这在Django中是意料之中的

要正确呈现模板,请使用
render\u-to\u-response('your\u-template.html',{'h':h})
(如果您的上下文字典很大,还有一个讨厌的快捷方式
render\u-to\u-response('your\u-template.html',locals())


下面是一些示例说明:(部分“如何处理无效变量”)

为了能够访问模板中的变量,它需要位于用于呈现该模板的上下文中。我的猜测是,渲染模板时没有将上下文词典传递给模板

引用的“字典”有一个字典,其中包含您希望在上下文中可用的所有变量。例如:

return render_to_response('your_template.html', {'h': h})
就“无错误”错误而言。。。这是无效模板变量的默认设置。如果愿意,可以在项目的设置中更改

您也可以使用

return render(request, 'your_template.html', {'h':h, 'var1':var1})
有关详细信息,请参阅最新手册