仅当Flask蓝图实际生成页面时,是否有方法可以为Flask端点(URL页面地址的结尾)生成唯一的UUID?在页面加载时或在Jinja方法调用中为Flask端点生成UUID
以下瓶蓝图代码不会为我工作:
@street_report_blueprint.route('/', methods=['POST', 'GET'])
def get_streetreport(reportid=uuid.uuid4().hex):
mainselection = request.form['MainlistRadios']
return render_template('street_reports/street_report.jinja2', mainselection=mainselection, reportid=reportid)
reportid
作为默认UUID值在这里的瓶方法的参数生成,并成功地传递到网页。 ({{ reportid }}
显示它。)
但是,如果我改变路线:
@street_report_blueprint.route('/<string:reportid>', methods=['POST', 'GET'])
...然后它不起作用:WERKZEUG抛出沿Did you forget to include the UUID?
线路路由错误。我看着 Werkzeug's URL Routing docs,并检查了SO和Google,所以我希望至少没有人赞成。
或者有没有简单的方法来生成UUID并将其传递到调用Blueprint方法的Jinja语句中?目前我有:
<form class="form-horizontal" action = "{{ url_for('street_reports.get_streetreport') }}" method="post">
“Werkzeug抛出路由错误。”什么是错误? –