我的项目有以下文件夹结构。我正在使用ExtJS,Sencha Cmd和Flask来启动这个项目。
用于UI的工具/框架
Sencha Cmd v6.2.1.29
Ext JS v6.2.1
我已成功为示例登录应用创建了UI。我使用了一些硬编码的用户名和密码验证,它已按预期工作。
但是我尝试使用使用Flask创建的网络服务器来实现。我修改了我的应用程序文件夹结构,如下所示。
project
│ run.py
│
└───static
│ │ ext/ <--- all extjs files here
│ │ app/ <--- my application folder
| | index.html
│ │ ...
└───templates
│ index.html
执行我的烧瓶应用程序后,我遇到了问题。 ExtJS所需的文件app.js,bootstrap.json都按预期加载。但它在网络中给出了错误,表示找不到ExtJS文件的文件。它应该在静态文件夹中请求文件,但请求是在应用程序根目录/ext/build/
中进行的,而它应该是/static/ext/build/
我只想在每个ExtJS文件请求中附加/static/
。有没有办法做到这一点?或者我做错了什么?
如果我运行位于静态文件夹内的index.html文件,那么UI工作正常,因为核心ExtJS文件的路径匹配。
我已经关注了我的应用的this链接。
答案 0 :(得分:1)
从app.json
文件更改条目确实解决了我的问题。
我使用app.json
路径的相对路径指向用于调用index.html
文件的bootstrap.js
文件。 e.g。
"indexHtmlPath": "../templates/index.html"
这样,extjs框架使用的每个文件都会自动指向正确的路径。所有extjs文件路径都与index.html文件相关。