Flask SQLAlchemy - 延迟加载结果

时间:2017-04-05 04:17:04

标签: flask sqlalchemy

我有一个评论表,链接到博客文章。对于数据库表中的每个注释,它在模板上列为其自己的行。我想懒得加载每条评论,以便用户浏览器不需要在浏览器中加载数千条评论。

这是SQLAlchemy的懒惰=动态'呢?文档让我对懒惰和急切负载的主题感到困惑。我只是使用延迟加载库来懒惰加载图像。我是Python,Flask和SQLAlchemy的新手。

1 个答案:

答案 0 :(得分:0)

如果根据您的评论,您通过带有yield_per的查询重新加载评论,则lazy属性有点无关紧要,因为它适用于实体关系映射(例如,如果您正在加载每个都有自己的评论映射为关系属性)。

除非您计划通过HTTP连接流式传输评论,否则您将保持打开状态,我不确定yield_per是否是最佳选择。 最简单的解决方案是利用http://flask-sqlalchemy.pocoo.org/2.1/api/#flask.ext.sqlalchemy.Pagination,您最初加载评论的第一页,例如25.然后在js滚动事件中,踢一个ajax调用踢同样的查询请求第2页,依此类推。

希望它有所帮助。