mysql - Django 从数据库检索数据到模板

标签 mysql django

我在从数据库检索数据时遇到问题, 我正在使用 Mysql 数据库和一个包含 15 个字段的表,我将把它显示在表的模板上。

表中有超过400万条记录,

def index(request):
    args = {}
    data = Mymodel.objects.all()
    args['data'] = data
    return render(request, 'index.html', args)

我尝试了这种方式,但数据加载非常非常慢,

以及我尝试的数据库连接的下一个方法

def index(request):
    args = {}
    sql = "select * from mymodel"
    cursor = connection.cursor()
    cursor.execute(sql)
    result = cursor.fetchall()
    args['result'] = result
    return render(request, 'index.html', args)

这也是一样的,我需要更快地加载数据。请向我建议任何可以更快地加载数据的方法。

最佳答案

解决方案之前的一个概念修正是,使用原始 sql 并不比 django ORM 更好,而且你也失去了使用 ORM api 轻松显示数据的能力。

常见的解决方案是使用 django 内置分页来每页仅显示一定数量的记录。 Django doc关于分页的使用有非常详细的解释。

关于mysql - Django 从数据库检索数据到模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37189023/

相关文章:

python - django-registration (1048, "Column ' last_login' 不能为空")

python - 如何在 Django 中的表中添加减法选项

php - 如何查找某个值在记录中出现的最高次数?

mysql - 一个用于多个客户端的大型 MySQL 数据库

mysql - 如何减少mysql查询运行时间

mysql选择更新: not locked for read

python - Django:使用 FormView 时可能有多种形式?

python - 在单个查询中获取外键对象

php - 检查 echo 内的单选按钮

python - django 测试文件下载 - "ValueError: I/O operation on closed file"