SQLAlchemy分页+MySQL

SQLAlchemy分页+MySQL,sqlalchemy,flask-sqlalchemy,Sqlalchemy,Flask Sqlalchemy,当我从msqlite切换到MariaDB时,我开始出现这个错误。ORM如何生成查询的语法似乎是个问题,但我不知道如何修复它。例如,更改参数(如“per_page”)只会使参数显示为“-20,20” sqlalchemy.exc.ProgrammingError ProgrammingError:pymysql.err.ProgrammingError 1064,您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解第3行的'-10,10'附近要使用的正确语法 [SQL:u'

当我从msqlite切换到MariaDB时,我开始出现这个错误。ORM如何生成查询的语法似乎是个问题,但我不知道如何修复它。例如,更改参数(如“per_page”)只会使参数显示为“-20,20”

sqlalchemy.exc.ProgrammingError

ProgrammingError:pymysql.err.ProgrammingError 1064,您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解第3行的'-10,10'附近要使用的正确语法

[SQL:u'选择post.id作为post\u id,post.title作为post\u title,post.text作为post\u publish\u text,post.publish\u date作为post\u用户id作为post\u id,post.publish\u date DESC\n按post.publish\u date DESC\n限制%param\u 1s,%param\u 2s'.[参数:{u'param\u 1':-10,u'param\u 2':10}]

以下是查询帖子的行:

@blog_blueprint.route('/')
@blog_blueprint.route('/<int:page>')
@cache.cached(timeout=60)
def home(page=1):
    posts = Post.query.order_by(Post.publish_date.desc()).paginate(page, 10)
    recent, top_tags = sidebar_data()

    return render_template(
    'home.html',
    posts=posts,
    recent=recent,
    top_tags=top_tags
    )

限制-10意味着什么?这没有意义。分页似乎设置了这一点。我不知道。def homepage=1:-删除该1并测试页面是否为无。
MariaDB [flaskblog]> SELECT post.id AS post_id, post.title AS post_title,
post.text AS post_text, post.publish_date AS post_publish_date, post.user_id
AS post_user_id \n FROM post ORDER BY post.publish_date DESC LIMIT -10, 10;

MariaDB [flaskblog]> SELECT post.id AS post_id, post.title AS post_title,
post.text AS post_text, post.publish_date AS post_publish_date, post.user_id
AS post_user_id \n FROM post ORDER BY post.publish_date DESC LIMIT 0, 10;