我是使用django的新手,对于我的问题应该如何措辞我并不熟悉。
我一直在开发一个新的网络应用程序,但注意到网站的初始加载速度很慢。我目前的观看代码就在这里。
from jinja2 import Environment, FileSystemLoader
from django.http import HttpResponse
from tools import fetcher
import requests
import json
def index(request):
env = Environment(loader=FileSystemLoader('templates'))
template = env.get_template('index.html')
template_values = {'popular_stocks': []}
popular = fetcher.get_tops()
for instrument in popular:
r = requests.get('https://api.iextrading.com/1.0/stock/%s/quote' % (instrument['symbol']))
quote = json.loads(r.content.decode('utf-8'))
template_values['popular_stocks'].append(quote)
return HttpResponse(template.render(template_values))
是否有加速我的网站加载首先加载初始index.html没有任何popularstocks,然后将fetcher.get_tops()提交给模板值?
我知道AJAX,但我不确定如何实现它,或者这甚至是我需要的。
任何朝着正确方向迈出的一步都将受到赞赏。
答案 0 :(得分:-1)
是的,在这种情况下,我肯定会使用AJAX。
其他策略可能是在某处缓存股票价格(MEMCACHE,Redis?),因此只是根据缓存过期策略而不是每次加载页面进行更新。