如何使用带有蓝图的烧瓶在jQuery中加载本地JSON

时间:2019-02-23 11:26:10

标签: python jquery json flask blueprint

我正在构建一个Flask应用程序,以下工作可根据用户输入从json文件动态加载数据:

getJSON($SCRIPT_ROOT + '/static/json_files/' + specialSelected[i], function(data) {....} 

specialSelected [i]的格式为* .json,并在该位置加载json_file。我的应用程序结构非常简单。

web/
    app.py
    static/
        json_files/
            ...
        ...
    templates/
        graphs.html (with the getJSON($SCRIPT_ROOT...)

(并执行“ FLASK_APP = app.py flask在Web目录中运行)。到目前为止,一切都很好。

现在,我一直在扩展应用程序,并决定使用蓝图。应用程序结构也随之发展:

web/
    web.py
    app/
        __init__.py
        data_viz/
            __init__.py
            graphs.py
            static/
                json_files/
                    ...
                ...
            templates/
                graphs.html (with the getJSON($SCRIPT_ROOT...)
       ...

(并且现在执行“ FLASK_APP = web.py flask在Web目录中运行)。因此,这些json文件现在来自应用程序在

中的根目录
'/app/data_viz/static/json_files/'

但是,如果我将graphs.html中的代码更改为

getJSON($SCRIPT_ROOT + '/app/data_viz/static/json_files/' + specialSelected[i], function(data) {....} 

它不起作用。 (GET给出404而不是200)。我想念什么?

编辑:研究其他正确的200个代码后,我尝试了以下操作:

getJSON($SCRIPT_ROOT + '/data_viz/static/json_files/' + specialSelected[i], function(data) {....} 

因此没有/ app。因此,脚本根目录不是最高目录,而是具有第一个 init .py的应用程序目录。我仍然想知道为什么吗?因为我运行了web.py

0 个答案:

没有答案