flask - Jinja2 格式不适用于 Raspberry Pi
问题描述
我正在尝试使用 Flask 在 Rasberry Pi 中创建一个基本网站。
我在渲染 html 时遇到错误。
我尝试使用 Jinja 格式,但不知何故它不起作用。
{% extends 'base.html' %}
{% block body %}
<h2>{the_title}</h2>
<form method="POST" action="/search4">
<table>
<p>Use this form to submit a search request:</p>
<tr><td>Pharse:</td><td><input name="pharse" type="TEXT" width="60"</td></tr>
<tr><td>Letters:</td><td><input name="letters" type="TEXT" value="aeiou"</td></tr>
</table>
<p>when you are ready,click this button:</p>
<p><input value="DO it" type="SUBMIT"</p>
</form>
{% endblock %}
基本模板代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>{{the_title}}</title>
</head>
<body>
{ % block body % }
{ % end block %}
</body>
</html>
我现在得到什么输出:-
我的python代码在这里:-
from vsearch import search4letters
from flask import Flask,render_template
app = Flask(__name__,template_folder='templates')
@app.route('/')
def hello()-> str:
return 'Hello world from Flask'
@app.route('/serach4')
def do_search() -> str:
return str(search4letters('life! the universe,and everything','eiru!'))
@app.route('/entry/')
def entry_page():
return render_template('entry.html',the_title = """\ Welcome
to search4letters on the web!""")
if __name__ == '__main__':
app.run(debug= True)
基本的html页面有问题吗?
那么,为什么 Jinja2 不能理解格式呢?
还是我做错了什么?
你能在这方面帮助我吗?
解决方案
不要在 Jinja2 模板中的{ }
和之间放置空格:%
{ % block body % }
{ % end block %}
如果有空格,它将被视为常规 HTML 字符串,而不是Jinja2 模板。此外,它应该是endblock
(一个词)而不是end block
.
它应该是:
{% block body %}
{% endblock %}
推荐阅读
- c# - ML.NET 抛出错误列“时间”具有 DateTime 值,这与之前观察到的 Single 类型不同
- php - DOCKER:运行 gulp-php 网站时出错
- c - 如何摆脱预期标识符错误?
- c++ - 非类型指针和引用模板参数以及它们在编译时如何/为什么被解析。C++
- python - 从python中的其他文件夹调用函数时如何处理相对路径?
- ruby-on-rails - Ruby on Rails 捆绑器
- php - 根据来自不同页面的 if 语句更改注册页面回显消息
- html - 需要帮助让 div 扩展到浏览器窗口的全高,同时保持 justify-content 设置
- google-cloud-storage - Firesstore 导出:未找到:项目“project_id”不存在
- excel - 读取 XLSM 文件的 Perl 模块是什么?