Add pagination to reviews

This commit is contained in:
rubenwardy 2020-12-03 23:41:11 +00:00
parent d24f024cca
commit 4242898e5d
2 changed files with 12 additions and 3 deletions

View File

@ -22,13 +22,16 @@ from flask_wtf import FlaskForm
from wtforms import *
from wtforms.validators import *
from app.models import db, PackageReview, Thread, ThreadReply
from app.utils import is_package_page, addNotification
from app.utils import is_package_page, addNotification, get_int_or_abort
@bp.route("/reviews/")
def list_reviews():
reviews = PackageReview.query.order_by(db.desc(PackageReview.created_at)).all()
return render_template("packages/reviews_list.html", reviews=reviews)
page = get_int_or_abort(request.args.get("page"), 1)
num = min(40, get_int_or_abort(request.args.get("n"), 100))
pagination = PackageReview.query.order_by(db.desc(PackageReview.created_at)).paginate(page, num, True)
return render_template("packages/reviews_list.html", pagination=pagination, reviews=pagination.items)
class ReviewForm(FlaskForm):

View File

@ -5,6 +5,12 @@
{% endblock %}
{% block content %}
{% from "macros/pagination.html" import render_pagination %}
{{ render_pagination(pagination, url_set_query) }}
{% from "macros/reviews.html" import render_reviews %}
{{ render_reviews(reviews, current_user, True) }}
{% from "macros/pagination.html" import render_pagination %}
{{ render_pagination(pagination, url_set_query) }}
{% endblock %}