2016-10-03 14 views
0

sqlalchemyのpaginateを使用して、次のようにページをページングしますが、フロントページには次のボタン(1,2,3、 4 ..)、最後のページに到達したら、次のボタンを表示したくない(またはページナビゲーションで利用可能な最大ページ数を知っています)。私はsqlalchemyで別のデータベースクエリを使用したくないです。これを達成する最も便利な方法は何ですか?Plask-SQLAlchemyページングの最後のページを見つける

私はページネーションfoは以下の使用しています:それは私が今やっている何を私のサイズの項目の正確な数を返すかどう

Blog.query.filter(Blog.title.like("%"+query+"%")).paginate(page=start,per_page=size).items 

一つの方法は、チェックすることができ、そうでない場合はそれが最後のものです、カウントおよびサイズの残りの部分がゼロであるコーナーケースを満たすことはありません。

+0

どのライブラリを使用しますか? SQLAlchemyは、その文書に 'paginate'という単語さえありません。 – skovorodkin

+0

OK、この方法を使用していると仮定します:http://flask-sqlalchemy.pocoo.org/2.1/api/?highlight=paginate#flask.ext.sqlalchemy.BaseQuery.paginate – skovorodkin

答えて

0

Pagination class docsをご覧ください。

query = (Blog.query.filter(Blog.title.like('%'+query+'%')) 
        .paginate(page=start, per_page=size)) 

次に、あなたは、前または次のページが存在するかどうかを確認するためにquery.has_prevquery.has_nextプロパティを使用することができます。

関連する問題