因此,我正在从Apache迁移到使用flask,我已经将所有的CSS,JavaScript,CSV和图像移至静态。从那里开始,我花了一段时间来更改所有href,以便正确加载所有内容。
html正在加载的所有内容都可以正常工作,但是javascript发送的所有请求都为404'ing,但我不确定为什么。
我的目录结构如下:
Python:
------- 静态:
--------------- css:
--------------- csv:
------------------------ gamesToday.csv
--------------- js:
--------------- 图片
------------------------ logo.png
------------------------ logo-small.png
------- 模板:
------------------ main.html
-------flaskTest.py
我的flasktest.py
现在只加载并呈现main.html文件。
对csv文件的JavaScript请求:
$.ajax({
type: "GET",
url: "{{url_for('static', filename='csv/gamesToday.csv')}}",
dataType: "text",
success: function(data) {processData(data);}
});
用于加载图像的JavaScript:
function logoSizing(){
if($(window).width() < 992)
$("#logo").attr("src", "{{url_for('static', filename='Images/small-logo.png");
else
$("#logo").attr("src", "{{url_for('static', filename='Images/logo.png");
}
奇怪的是,当我将对图像的请求移动到html中时,图像会正确加载,因此我知道该文件实际上是存在的,因此我认为错误在于我无法像这样进行AJAX调用这个?如果是这样,我该如何正确进行制作?
很抱歉,如果这很简单,那么今天就开始学习Flask,我的头就很难缠了。
答案 0 :(得分:0)
.js
文件,因此它不会将{{url for...}}
替换为实际的URL。
您将需要从其中一个html模板中传递url或对路径进行硬编码