我在网页上显示的词典中大约有800项。页面加载变得非常缓慢,耗时约40秒。有什么帮助我可以使它更快吗?我对html没有太多经验。 javascript可以帮助使其更快吗? 这就是我所拥有的-
{% for dev, need in dev_firm.items %}
<div class="col-md-3 col-xs-2"><a href="{% url 'inv:dev_view' dev %}">{{ dev }}</a></div>
<div class="col-md-3 col-xs-2">{{ need|updatestatus }}</div>
{% endfor %}
dev_firm是django变量。
答案 0 :(得分:0)
我没有Django的经验,但是我不会尝试在客户端上加快速度,只要您必须分别调用每个元素,它将使情况变得更糟(800个JavaScript fetch()
调用也就是说,这将是您对Web应用程序所做的最糟糕的事情。
根据服务器环境,您应该考虑将所有字典条目以可用格式存储在服务器上。这样,用户只能直接下载一个文件。
如果要使用JavaScript解析并在客户端显示此文件,则每当字典更新时,都需要运行一个脚本,将所有条目编译为JSON
文件。根据您的服务器环境,此类脚本可能是连接到您的内容管理系统中的PHP
片段,也可能是在您告知时运行的python
编写的服务。
如果您喜欢其他语言,则可以使用相同的方法简单地生成静态HTML
。
此处逻辑的主要问题是您希望在调用数据时编译文件。有很多原因,为什么要向用户提供在创建数据时已编译的文件。 了解更多:https://www.codecademy.com/articles/what-is-crud