Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.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模板赢得';t在页面上显示模型对象属性_Python_Html_Django_Django Templates - Fatal编程技术网

Python Django模板赢得';t在页面上显示模型对象属性

Python Django模板赢得';t在页面上显示模型对象属性,python,html,django,django-templates,Python,Html,Django,Django Templates,我试图在Django模板中显示模型对象的属性,但数据不会显示在页面源中 在视图中.py def view_func(请求): ... data=ModelObj.objects.all() 打印(数据)#打印 返回呈现(请求“templates/app/page.html”,{'data':data}) 在page.html中 。。。格式化的html。。。 ... {数据%中的i为%1} {{i.name} {{i.time} {{i.value}} {%endfor%} 运行Django

我试图在Django模板中显示模型对象的属性,但数据不会显示在页面源中

视图中.py

def view_func(请求):
...
data=ModelObj.objects.all()
打印(数据)#打印
返回呈现(请求“templates/app/page.html”,{'data':data})
page.html中

。。。格式化的html。。。
... 
{数据%中的i为%1}
{{i.name}
{{i.time}
{{i.value}}
{%endfor%}
运行Django站点后查看页面源时:

... html ...
    <tbody>
        { % for i in data % }
        <tr>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        { % endfor % }
    </tbody>
。。。html。。。
{数据%中的i为%1}
{%endfor%}
如果我将
{{data}}
添加到html页面,我可以看到
显示在页面上,但Django不会在页面上显示模型对象属性。非常感谢您对此错误的任何帮助,谢谢。
编辑:这是在Python3.9和Django版本3.1.2上,在jinja模板中,百分比符号%和花括号{}
之间似乎有空格。这是不正确的语法。{和%不应包含空格:

正确语法:

{% for i in data %}
  <td> {{ i.name }} </td>
  <td> {{ i.time }} </td>
  <td> {{ i.value }} </td>
{% endfor %}
{%for i in data%}
{{i.name}
{{i.time}
{{i.value}}
{%endfor%}
语法错误:(空格是错误的语法)


{数据%中的i为%1}
{{i.name}
{{i.time}
{{i.value}}
{%endfor%}

jinja模板在页面源代码中不应可见,例如,如果循环运行3次,它将三次显示html标记,而不是jinja模板。

非常感谢,这解决了错误!我不知道空格的语法不正确。
... html ...
    <tbody>
        { % for i in data % }
        <tr>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        { % endfor % }
    </tbody>
{% for i in data %}
  <td> {{ i.name }} </td>
  <td> {{ i.time }} </td>
  <td> {{ i.value }} </td>
{% endfor %}
<!-- Incorrect Syntax -->
{ % for i in data % }
  <td> {{ i.name }} </td>
  <td> {{ i.time }} </td>
  <td> {{ i.value }} </td>
{ % endfor % }