どのように1ページごとに表示させるアイテム数とページネータをコントロールすればいいか
どのように1ページごとに表示させるアイテム数とページネータをコントロールすればいいでしょうか?
5つの要素を1つのhtml上に表示させたいです。
例えば、21この要素があった時、5つのページを作ってそれぞれに5つずつ配置したいです。
app.pyに
from flask_paginate import Pagination, get_page_parameter
@app.route("/page", methods=["GET","POST"])
def page():
users = {
"data":[
{
“Name”:”Tom”,
“Age”:”21”
},
{
“Name”:”John”,
“Age”:”40”
},
{
“Name”:”Juddy”,
“Age”:”37”
},
{
“Name”:”Kei”,
“Age”:”46”
},
{
“Name”:”Wu”,
“Age”:”12”
},
{“Name”:”Rey”,
“Age”:”47”
},
{
“Name”:”Boo”,
“Age”:”25”
},
{
“Name”:”Cho”,
“Age”:”48”
}
],
“Date”:”20180403”
}
users = users["data"]
page = request.args.get(get_page_parameter(), type=int, default=5)
pagination = Pagination(page=page, total=len(users), search=search)
return render_template(“index.html", json=users,pagination=pagination)
と書いて、index.htmlに
<div>
{% for i in range(json|length) %}
<div>
<h3>{{ json[i]['Name'] }}</h3>
<h3>{{ json[i]['Age'] }}</h3>
</div>
{% endfor %}
</div>
{{ pagination.info }}
{{ pagination.links }}
と書きました。
しかし、今の状態だと、8つの要素全てが1つのhtmlに表示されてしまいます。
5つの要素を1つのページに、3つの要素を別のページに表示される仕組み・ページネータを作るには何が問題でしょうか?またどう修正すればいいでしょうか?
*以前、https://stackoverflow.com/questions/50920528/how-can-i-control-the-number-of-items-are-shown-in-one-html にも投稿しました。
回答が求めているものではなかったのでこちらにも投稿させていただきます。