【发布时间】:2017-02-09 01:26:01
【问题描述】:
我正在开发一个简单的 Flask Web 应用程序,该应用程序在 Bootstrap 表中显示来自 PSQL 数据库的数据(2000 多个项目)。问题是显示表格的页面需要很长时间才能加载。
我的models.py:
from app import db
class Movie(db.Model):
__tablename__ = 'movies'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(60), index=True, unique=True)
director = db.Column(db.String(60), index=True)
release_date = db.Column(db.Date, index=True)
duration = db.Column(db.Integer)
def __repr__(self):
return '<Movie: %s>' %(self.name)
我的views.py:
@home.route('/')
movies = Movie.query.all()
return render_template('home/index.html', movies=movies)
数据在index.html中加载如下:
{% for movie in movies %}
<tr>
<td> {{ movie.id }} </td>
<td> {{ movie.name }} </td
<td> {{ movie.director }} </td>
<td> {{ movie.release_date }} </td>
<td> {{ movie.duration }} </td>
</tr>
{% endfor %}
我正在为我的表格使用分页,虽然只是在视觉上(数据仍然在开始时完全加载)。为了实现这一点,我使用了Bootstrap-Table,所以我的表格看起来像this。
在我看来,最好的选择是先加载 15 个项目并显示它们。加载完其他所有内容后,就可以加载剩余的项目了。但是,我不知道该怎么做。
如何提高表格页面的加载时间?
【问题讨论】:
-
你可能想看看烧瓶缓存:pythonhosted.org/Flask-Cache
标签: postgresql flask jinja2 flask-sqlalchemy