加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

flask开中发遇到AttributeError: 'BaseQuery' object

发布时间:2020-12-17 17:03:13 所属栏目:Python 来源:网络整理
导读:flask开中发遇到builtins.AttributeError: AttributeError: 'BaseQuery' object has no attribute 'paginater' 代码: @main.route('/',?methods=['GET',?'POST'])def?index():????form?=?PostForm()????if?current_user.can(Permission.WRITE_ARTICLES)?an

flask开中发遇到builtins.AttributeError:

AttributeError: 'BaseQuery' object has no attribute 'paginater'

代码:

@main.route('/',?methods=['GET',?'POST'])
def?index():
????form?=?PostForm()
????if?current_user.can(Permission.WRITE_ARTICLES)?and?
????????????form.validate_on_submit():
????????post?=?Post(body=form.body.data,????????????????????author=current_user._get_current_object())
????????db.session.add(post)
????????return?redirect(url_for('.index'))
????#?页面内容分页
????#?request.args?查询字符串,如果没有明确指定,默认渲染第一页
????#?type=int??保证参数无法转换成整数事时,返回默认值
????page?=?request.args.get('page',?1,?type=int)
????#?pageinater()?显示某页中记录,第一个参数是页面,也是唯一必需的参数
????#?per_page?指定每页显示的记录数量,默认显示20个记录,????#?per_page?的值从环境变量FLASK_POST_PER_PAGE中读取
????#?error_out=?False?如果设为True,如果请求的页面超出了范围,返回404错误,
????#?设为Fasle,?页数超出范围返回一个空列表
????pagination?=?Post.query.order_by(Post.timestamp.desc()).paginater(
????????page,?per_page=current_user.config['FLASK_POST_PER_PAGE'],?error_out=False
????)
????posts?=?pagination.items
????return?render_template('index.html',?form=form,?posts=posts,pagination=pagination)

错误原因是pagination = Post.query.order_by(Post.timestamp.desc()).paginater()中的paginater多了一个r.

正确写法:

????pagination?=?Post.query.order_by(Post.timestamp.desc()).paginate(
????????page,?error_out=False
????)


(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读