有什么方法可以检查来自 url_for()
的静态文件是否真的存在?因为我想检查如果第一个文件不存在,我想将其替换为另一个文件,就像我的 html 文件中的这样:
{% set IconPng = url_for('static', filename="images/favo.png") %}
{% set IconIco = url_for('static', filename="images/favo.ico") %}
{% set Default = url_for('static', filename="images/default.ico") %}
{% if IconPng %}
<img src="{{IconPng}}" />
{% elif IconIco %}
<img src="{{IconIco}}" />
{% else %}
<img src="{{Default}}" />
{% endif %}
我已经尝试过上面的方法以及或
运算符,例如:
<img src="{{IconPng or IconIco or Default}}" />
但是,它不起作用。有什么提示我如何在 Flask 中对 url_for()
进行检查?
谢谢
最佳答案
在我看来,这对 javascript 来说是一个任务,而不是你的后端。 您可以使用这样的函数检查图像是否存在,然后相应地更改图像 src:
function file_exists(url){
var http = new XMLHttpRequest();
http.open('HEAD', url, false);
http.send();
return http.status != 404;
}
关于python - 如何通过 Flask 中的 url_for() 检查静态文件是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62790012/