url_fo不了解我的变量



在这里,我试图让它在用户上传图像时显示给所有用户"数据";包含文件名,即";files/dog.png";。由于某种原因,newImg.src只变成了"/静态/";。我的代码如下所示:

var chatDiv = document.getElementById('messages');
const newImg = document.createElement("img");
newImg.src = "{{url_for('static', filename = data )}}"
chatDiv.appendChild(newImg)

我已经尝试过像这样使用Jinja2字符串插值:

newImg.src = "{{url_for('static', filename = {{ data }} )}}"

但是,这会导致以下错误:

jinja2.exceptions.TemplateSyntaxError: expected token ':', got '}'

是的,即使删除了括号,我的代码仍然不起作用(请重新打开这篇文章(。

非常感谢您的协助!

好吧,我找到了解决办法!您必须使用.replace将字符串替换为另一个变量。

newImg.src = "{{url_for('static', filename = 'data')}}".replace('data', data)

最新更新