Мне нужно решение, чтобы направить в более глубокий слой URL (если это утверждение верно). После входа в систему пользователь может видеть две кнопки, и текущий URL-адрес
/tools
После нажатия одной кнопки он направляется на новую страницу, URL-адрес которой теперь
/tools/swi
, где swi - название кнопки. На этой странице есть еще две кнопки, одна из которых view . Я хочу щелкнуть по нему и показать URL
/tools/swi/table
, но я не знаю, как этого добиться. Потому что, если я нажимаю другую кнопку на странице инструментов и затем нажимаю view , я хочу получить URL
/tools/dsm/table
. Существующий код выглядит следующим образом: Кнопочный набор кнопок инструментов
toolsdict = {
"swi":["swi"],
"dsm":["dsm"]
}
Код маршрута:
@app.route('/tools',methods=['POST','GET'])
@login_required
def tools():
return render_template('tools.html',title='Tools',Tools=toolsdict)
@app.route('/tools/<string:subt>',methods=['POST','GET'])
@login_required
def subtool(subt):
htmlname = subt+".html"
return render_template(htmlname,title=list(toolsdict.keys())[list(toolsdict.values()).index([subt])])
@app.route('/table', methods=['GET', 'POST'])
@login_required
def table_edit():
extraction = PDF.query.all()
labels = db.Model.metadata.tables['pdf_info'].c.keys()
return render_template('table.html',
title='Table edit', labels=labels, extraction=extraction)
Я пытаюсь перейти на
@app.route('/tools/<string:subt>/table', methods=['GET', 'POST'])
Но я не знаю, как передать значение выбранной кнопки в subt переменная.
Код HTML:
инструменты. html
{% extends "select.html" %}
{% block selection %}
{% for k in Tools.keys() %}
<a href="{{ url_for('subtool',subt=Tools[k][0]) }}" class="btn btn-lg btn-primary btn-sm">{{ k }}</a>
{% endfor %}
{% endblock %}
swi. html
{% extends "select.html" %}
{% block selection %}
<a href="{{ url_for('table_edit') }}" class="btn btn-lg btn-primary btn-sm">View</a>
<a href="{{ url_for('add_entry') }}" class="btn btn-lg btn-primary btn-sm">Create</a>
{% endblock %}
часть таблицы. html
<table class="table table-striped table-hover">
<thead>
<tr>
{% for label in labels %}
<td>{{ label }}</td>
{% endfor %}
<td></td>
<td></td>
</tr>
</thead>
{% for ex in extraction %}
<tr class={{ "success" if ex.done }}>
<td>{{ ex.id }}</td>
<td>{{ ex.author }}</td>
<td>{{ ex.title }}</td>
<td>{{ ex.version }}</td>
<td>{{ ex.last_update }}</td>
<td>{{ ex.filepath }}</td>
<td>{{ ex.uid }}</td>
<td><a href="edit/{{ ex.id }}" class="btn btn-secondary pull-left btn-sm">Edit</a></td>
<td>
<form action="{{ url_for('delete',id=ex.id) }}" method="post">
<input type="hidden" name="_method" value="DELETE">
<input type="submit" value="Delete" class="btn btn-danger btn-sm">
</form>
</td>
<td><a href="{{ url_for('pdf_open',fn=ex.title) }}" class="btn btn-warning pull-left btn-sm">Open</a></td>
</tr>
{% endfor %}
</table>
Может ли кто-нибудь помочь? Спасибо.