javascript - 将变量从 javascript 传递到 django 模板

标签 javascript django django-templates

我想从客户端发送一个字符串值作为 javascript 变量以在 django 模板中使用。具体来说,该字符串是图像的相对路径,它将在 django 模板中使用,并且 django 模板标签为 static。静态文件位于 Amazon S3 上,应使用 django 模板的静态标签提供服务。

在 django 模板中,我需要来自 javascript 的变量 photo_url。

<img class = "main-img" src = "{% static photo_url %}" alt="main photo" />

现在,在javascript中,我已经嵌入了一个span的innerhtml,其中photo_url作为照片的相对url(/static/images/abc.png):

<img class = "main-img" src = ' + photo_url + ' alt="main photo" />

但是这样,即使我在 javascript 的 insidehtml 中包含静态标签,我也无法从 S3 提供静态文件。最好的方法是什么(将 javascript 变量传递给 django 模板)?

最佳答案

{% static %} 只是一个方便标记,您可以随时对静态网址进行硬编码。
您将无法在 {% static %} 标记中使用 js 变量(无论是附加它们还是无论如何),因为 js 会与 html 一起渲染而无需任何处理。

关于javascript - 将变量从 javascript 传递到 django 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20302474/

相关文章:

python - Django - 使用属性作为外键

python - django如何异步执行函数,即将任务移交给子进程并返回响应

django - 如何测试 django 模板 block 的使用?

javascript - 如何截屏充满动态内容的DIV?

javascript - 立即运行 setInterval

javascript - 如何缓解 body 左侧?

python - 在 Django 中提供静态内容会导致 CSS 文件出现 404 错误

python - 模板中的django url添加参数的正确方法

由查询集填充的 Django 选择字段 - 保存 id 但显示值

javascript - KnockoutJS-验证 : initialization isn't being applied