每当我按下我的提交按钮让我的文件转到那个文件页面时,我得到一个不允许的方法,我认为这是一个没有 POST 和 GET 的问题,但我有。基本上这条线在我的代码中不起作用
if request.method == 'POST':
return redirect(url_for('files()'))
视图.py
class HView(BaseView):
route_base = "/home"
@expose('/test')
@appbuilder.app.route('/test', methods=['GET', 'POST'])
def test(self):
if request.method == 'POST':
return redirect(url_for('files()'))
else:
return render_template(blah)
索引.html
{% extends "appbuilder/base.html" %}
{% block title %}Title{% endblock %}
{% block content %}
<div class="container">
<div class="col-12-xs">
<h3>Bucket List</h3>
<table class="table table-striped">
<tr>
<th>Bucket Name</th>
<th>Created</th>
<th></th>
</tr>
{% for bucket in buckets %}
<tr>
<td>{{ bucket['Name'] }}</td>
<td>{{ bucket['CreationDate'] | datetimeformat }}</td>
<td>
<form class="select-bucket" action="{{ url_for('HView.test')}}" method="post">
<input type="hidden" name="bucket" value="{{ bucket['Name'] }}"/>
<button type="submit" class="btn btn-primary btn-sm">
<i class="fas fa-archive"></i>
</button>
</form>
</td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock %}
尝试指定方法 @expose
前任:
class HView(BaseView):
route_base = "/home"
@expose('/test', methods=['GET', 'POST'])
def test(self):
if request.method == 'POST':
return redirect(url_for('files()'))
else:
return render_template(blah)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句