我正在制作一个django webapp。在主页上,有一些div我想在我的数据库中显示定期更改的随机图像(即每隔几秒从数据库中获取一个随机图像)。这个jquery使用一些for循环来实现这一点。我已经在views.py文件中传递了文件列表,我可以在模板中检索图像列表。但是当我把{{filelist |在我的jquery中,每次循环中每次都使用相同的文件名。我该如何解决这种情况?
让我知道我应该提供哪些额外信息。
答案 0 :(得分:2)
首先,“随机”django过滤器将从列表中返回一个对象,这就是为什么只有一个对象可用。其次,jquery不能直接使用django模板引擎,它可以与模板引擎产生的结果一起使用。你必须记住,django模板标签和过滤器是在服务器端呈现的,一旦它被渲染,它就完成了,发送到客户端......并且在你发出另一个请求之前不会改变。
如果“filelist”是您的上下文值,那么您可以拥有作用于javascript数组的jquery代码。你可以这样做:(假设filelist中的所有值都是字符串)
var js_array = [{% for f in filelist %}"{{ f }}",{% endfor %}];