【问题标题】:How to speed up loading lot of images in django templates?如何加快在 django 模板中加载大量图像的速度?
【发布时间】:2020-07-20 13:25:50
【问题描述】:

我想加快在 django 模板中加载图像的过程。现在,我处于页面将“获取”所有图像然后呈现页面的情况。

index.html 的一部分:

{% extends 'base.html' %}
{% load thumbnail %}

{% block content %}
{% for new in news_list %}
    <div class="card">
    {% thumbnail new.image "250x250"  as im %}
       <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
    {% endthumbnail %}
    </div>
{% endfor %}
{% endblock %}

view.py 的一部分

from .models import News

def home(request):
   news_list = News.objects.all()
   return render(request, 'index.html', news_list)

我使用 chrome "F12" 来查看发生了什么。 “获取”所有图像需要很长时间。我认为这不是获得大型模型的问题。是否有另一种方法可以在模板中显示一些图像而不是获取所有图像?非常感谢。

【问题讨论】:

标签: python django django-templates sorl-thumbnail


【解决方案1】:

当您真的有很多图像时,这里的解决方案是按需加载图像。就像用户向下滚动并下载新图像一样。

可以使用jquery-loadscroll 插件

UPD 正如@Kurohige 下面提到的,您还必须优化网络图像。通过优化他意味着松散的图像大小压缩

【讨论】:

  • 另外我建议一个网络图像优化器
  • @Kurohige 有道理
猜你喜欢
  • 2016-11-20
  • 2011-03-10
  • 1970-01-01
  • 2015-01-21
  • 1970-01-01
  • 2021-02-03
  • 2010-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多