2016-08-01 11 views
4

フラスコ_paginateを使用してバックエンドからのデータをページ付けしようとしています。私はそれを実装するために、https://pythonhosted.org/Flask-paginate/に従った。UndefinedError: 'flask_paginate.Pagination object'に 'skip'という属性がありません

マイビュー -

<!DOCTYPE html> 
<html lang='en'> 
<head> 
    <meta charset="utf-8" /> 
    <title>AT - Monitoring System</title> 

</head> 
<body> 
{{ pagination.info }} 
{{ pagination.links }} 
<table id="myTable"> 
<thead> 
<tr> 
    <th>Sector ID</th> 
    <th>Username</th> 
    <th>Password</th> 
    <th>Camera Name</th> 
    <th>Camera ID</th> 
    <th>Recording status</th> 
</tr> 
</thead> 
<tbody> 
{% for each in response %} 
<tr> 
    <td>{{ loop.index + pagination.skip }}</td> 
    <td>{{each[0]}} </td> 
    <td>{{each[1]}} </td> 
    <td>{{each[2]}}</td> 
    <td>{{each[3]}}</td> 
    <td>&nbsp;{{each[4]}}</td> 
    <td>{{each[5]}}</td> 
</tr> 
{% endfor %} 
</tbody> 
</table> 
{{ pagination.links }} 
</body> 
</html> 

Pythonのコード -

APP = flask.Flask(__name__) 
@APP.route('/', methods=['GET', 'POST']) 
def index(): 
    """ Displays the index page accessible at '/' 
    """ 
    search = False 
    q = request.args.get('q') 
    if q: 
     search = True 

    page = request.args.get('page', type = int, default = 1) 
    pagination = Pagination(page=page, total=len(Backend()), search=search, record_name='response') 
    if request.method == 'GET': 
     return flask.render_template('index.html', 
            response = data, 
            pagination = pagination 
            ) 
if __name__ == '__main__': 
    data = Backend() 
    Thread(target=main_loop).start() 
    APP.debug=True 
    APP.run(port=63000) 

私は)私にpagination.skipの使用状況を示す(ドキュメントを見つけることを試みたが、何かを見つけることができません。この機能を削除すると、私のブラウザではページが表示されますが、コンテンツはページ番号に従って表示されません。間違いなく何かがある、私は大きな時間を欠いている。オンラインのその他の例は、https://pythonhosted.org/Flask-paginate/

答えて

0
@app.route('/') 
def index(): 
    page, per_page, offset = get_page_args(page_parameter='page', 
              per_page_parameter='per_page') 
    cursor = mongo.db.NameCollection 
    urls = cursor.find({}).sort('_id', pymongo.ASCENDING).skip(offset).limit(per_page) 
    total = cursor.count() 
    pagination = Pagination(page=page, 
          per_page=per_page, 
          total=total, 
          record_name='users', 
          format_total=True, 
          format_number=True, 
          css_framework='foundation') 
    return render_template('index.html', 
          urls=urls, 
          page=page, 
          per_page=per_page, 
          pagination=pagination) 

<!DOCTYPE html> 
<html> 
    <head> 
     <!-- Latest compiled and minified CSS --> 
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> 
     <link rel="stylesheet" href="..."> 
    </head> 
    <body> 
     <h1>...</h1> 
     {{ pagination.info }} 
     {{ pagination.links }} 
     <table class="table"> 
      <thead> 
       <tr> 
        <th>#</th> 
        <th>...</th> 
        <th>...</th> 
        <th>...</th> 
        <th>...</th> 
       </tr> 
      </thead> 
      <tbody> 
       {% for url in urls %} 
        <tr> 
         <td>{{ loop.index + (page - 1) * per_page }}</td> 
         <td>{{ url. ... }}</a></td> 
         <td>{{ url. ... }}</td> 
         <td>{{ url. ... }}</td> 
         <td>{{ url. ... }}</td> 
        </tr> 
       {% endfor %} 
      </tbody> 
     </table> 
     {{ pagination.links }} 
    </body> 
</html> 
関連する問題