Maison >développement back-end >Tutoriel Python >Introduction détaillée à la pagination des flacons

Introduction détaillée à la pagination des flacons

零下一度
零下一度original
2017-06-27 09:53:082127parcourir

Dans le processus d'apprentissage, nous rencontrerons un tel problème, c'est-à-dire que dans le processus d'apprentissage, nous constaterons qu'une pagination est nécessaire. Ici, je vais vous présenter la pagination mentionnée dans le livre.

@app.route('/',methods=['GET'])
@app.route(&#39;/<int:page>&#39;)
def home(page=1):
	pagination=Post.query.order_by(Post.publish_date.desc()).paginate(page, per_page=10,error_out=False)
	posts = pagination.items
	link,tuijian_post,fenlei=get_tui_link()
	return render_template(&#39;home1.html&#39;,
                           posts=posts,
                           pagination=pagination,
                           tuijian_post=tuijian_post,fenleis=fenlei,                
                           links=link)

Ce sont les données paginées que j'ai lues dans la base de données, alors comment paginer ? Voyons ce que dit le livre

Ensuite, nous devons utiliser une page séparée pour enregistrer nos informations liées à la pagination.

{% macro pagination_widget(pagination, endpoint) %}
<ul class="pagination">
<li{% if not pagination.has_prev %} class="disabled"{% endif %}>
<a style=&#39;background-color: lightgoldenrodyellow;color: brown;&#39; href="{% if pagination.has_prev %}{{ url_for(endpoint,
page = pagination.page - 1, **kwargs) }}{% else %}#{% endif %}">
«
</a>
</li>
{% for p in pagination.iter_pages() %}
{% if p %}
{% if p == pagination.page %}
<li class="active">
<a style=&#39;background-color: lightgoldenrodyellow;color: brown;&#39; href="{{ url_for(endpoint, page = p, **kwargs) }}">{{ p }}</a>
</li>
{% else %}
<li>
<a style=&#39;background-color: lightgoldenrodyellow;color: brown;&#39; href="{{ url_for(endpoint, page = p, **kwargs) }}">{{ p }}</a>
</li>
{% endif %}
{% else %}
<li class="disabled"><a href="#">…</a></li>
{% endif %}
{% endfor %}
<li{% if not pagination.has_next %} class="disabled"{% endif %}>
<a  style=&#39;background-color: lightgoldenrodyellow;color: brown;&#39; href="{% if pagination.has_next %}{{ url_for(endpoint,
page = pagination.page + 1, **kwargs) }}{% else %}#{% endif %}">
»
</a>
</li>
</ul>
{% endmacro %}

Alors comment l'utiliser

{% import "mac.html" as macros %}

Ajouter ce qui suit

L'effet est tel que montré sur l'image

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn