我想从数据库中获取数据并使用django-python将其发送到html页面。
我在python文件中做的是
def module1(request):
table_list=student.objects.all()
context={'table_list' : table_list}
return render(request,'index.html',context)
在html中是
<div class="rightbox">
In right box. data is :<br> <br>
{% if table_list %}
<ul> {% for item in table_list %}
<li>{{ item.name }}</li>
<li>{{ item.address }}</li>
<li>{{ item.mob_no }}</li>
{% endfor %}
</ul>
{% else %}
<p>somethings is wrong</p>
{% endif %}
</div>
没有任何内容被发送到html文件。它经常进入其他区块。 我不知道我在哪里弄错了。请帮助我。
答案 0 :(得分:0)
到目前为止,我们没有看到您的student
模型(应该在您的models.py
中并在vievs.py
中导入)并且您的代码没有抛出任何异常似乎您的table_list
为空。要以更方便的方式迭代它,您可以使用内置的for ... empty
模板标记:
<div class="rightbox">
In right box. data is :<br> <br>
<ul>
{% for item in table_list %}
<li>{{ item.name }}</li>
<li>{{ item.address }}</li>
<li>{{ item.mob_no }}</li>
{% empty %}
<p>somethings is wrong</p>
{% endfor %}
</ul>
</div>
试试这个,看看会发生什么。如果您发现自己处于{% empty %}
阻止状态 - 您的table_list
为空,这表示数据库中为空表。
同时检查docs是否有此标记。