Как осуществить перемещение по страницам в блоге на Flask, сохраняя поисковой запрос?
Мне надо перемещаться по списку постов, отсортированных по поиску, но я не знаю, как сохранять запрос (перемещение сделано с помощью pagination)
(blueprint.py)
@posts.route('/')
def index():
q = request.args.get('q')
page = request.args.get('page')
if page and page.isdigit():
page = int(page)
else:
page = 1
if q:
posts = Post.query.filter(Post.title.contains(q) | Post.body.contains(q))
else:
posts = Post.query.order_by(Post.created.desc())
pages = posts.paginate(page=page, per_page=5)
return render_template('posts/index.html', posts=posts, pages=pages, q=q)
(posts/index.html)
{% extends 'base.html' %}
{% block title %}
Blueprint page
{% endblock %}
{% block content_title %}
Posts{% if q %} for "{{ q }}" search:{% endif %}
{% endblock %}
{% block content %}
{% for post in pages.items %}
<p>
<a href="{{ url_for('posts.post_detail', slug=post.slug) }}">{{ post.title }}</a>
</p>
{% endfor %}
<nav>
<ul class="pagination">
<li class="page-item {% if not pages.has_prev %} disabled {% endif %}">
<a class="page-link" href="./?page={{ pages.prev_num }}" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
{% for page in pages.iter_pages() %}
<li class="page-item {% if page == pages.page %} active {% endif %}">
<a class="page-link" href="./?page={{ page }}">{{ page }}</a>
</li>
{% endfor %}
<li class="page-item {% if not pages.has_next %} disabled {% endif %}">
<a class="page-link" href="./?page={{ pages.next_num }}" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
</ul>
</nav>
{% endblock %}
Возможно, это надо сделать с помощью href="./?page={{ page }}/?q={{ q }}" , но вроде это не работает.