这个是我flask代码:
coding=utf-8
from flask import render_template, request,flash, redirect, url_for,current_app,abort
from . import main
from ..import db
from ..models import Post, Comment
from flask_login import login_required, current_user
from .forms import CommentForm, PostForm
from flask_babel import gettext as _
@main.errorhandler(404)
def page_not_found(error):
return render_template('404.html'), 404
@main.route('/')
def index():
page_index = request.args.get('page', 1, type=int)
query = Post.query.order_by(Post.created.desc())
pagination = query.paginate(page_index, per_page=20,error_out=False)
posts = pagination.items
return render_template('index.html',
title=_(u'欢迎来到Lee的投研咖啡馆'),
posts=posts,
pagination=pagination)
这个是我的模板代码:
{% extends 'bootstrap/base.html' %}
{% block title %}{{ title }}{% endblock %}
{% block head %}
{{ super() }}
{% include ['includes/_head.html', 'includes/_metas.html'] %}
{% endblock %}
{% block styles %}
{{ super() }}
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.5/cerulean/bootstrap.min.css ">
{% endblock %}
{% block navbar %}
{# { nav.top.render() }} #}
{% include 'includes/_navbar.html' %}
{% endblock %}
{% block content %}
{% block header %}
<header>
<div class="page-header">
<div class="container">
<h1>{{ title }}</h1>
</div>
</div>
</header>
{% endblock %}
{% block page_body %}
{% endblock %}
{% endblock %}
这个是我的错误显示:
是我使用的方式不对么?请各位解答
问题已经解决了,错误在index.html中pagination用法的错误,原来的代码是:
{% if pagination %}
已经改正:
{% if pagination %}
<div class="pagination">
</div>
{% endif %}
同时,修改了macros宏分页模板:{#% marco input(name,value='',type='text',size=20) %#}
{% macro pagination_widget(pagination, endpoint, fragment='') %}
<ul class="pagination">
</ul>
{% endmacro %}
注释掉的是原来的内容