如何在使用 Flask 后端时将图像和资产与 HTML 一起使用
How do you use images and assets with HTML while using a Flask backend?
我正在尝试制作一个 TicTacToe 网络应用程序,其中 AI 扮演玩家 2。为此,我用python编写了游戏和AI,编写了html/javascript前端,并使用了烧瓶服务器。在 html 中,我有 img 标签和资产,例如(这些以传统方式嵌入在 html 文件中):
<img id="pic" src="assets/images/hil.jpg" class="X">
or
<audio src="assets/audio/smw_coin.wav" id="marioStart" preload="auto"></audio>
但是,我收到这种形式的错误。
127.0.0.1 - - [11/Feb/2016 23:52:22] "GET/assets/audio/smb_pipe.wav HTTP/1.1" 404 -
127.0.0.1 - - [11/Feb/2016 23:52:22] "GET/assets/js/jquery-1.11.3.js HTTP/1.1" 404 -
Flask 似乎将其解释为域名,而不是检查资产文件夹。有谁知道如何让 Flask 将 src 请求解释为 flask 模板文件夹中的目录?
附言。这也是一个问题,因为它阻止我在我的 html 文件中包含 JQuery。
你想使用 url_for
.
<img src="{{ url_for('static', filename='images/hil.jpg') }}">
默认情况下,您最终会得到一个看起来像从static
文件夹中提供的/static/images/hil.jpg
的 URL。如果你想保留你拥有的URL,你必须告诉Flask对静态资产使用不同的URL路径。
app = Flask(__name__, static_url_path='/assets')
这将为您提供一个看起来像静态文件夹/assets/images/hil.jpg' that is served up from your
URL。如果您已经命名了文件夹资产,并且不想重命名它,则可以告诉 Flask 也在其他文件夹中查找静态资产。
app = Flask(__name__, static_folder='assets')
这将为您提供一个看起来像从assets
文件夹中提供的/assets/images/hil.jpg
的 URL。在这种情况下,您不需要同时指定这两个参数,因为默认情况下static_url_path
使用static_folder
。
- 图像将随页面一起滚动
- 如何将 ng-repeat 与图像映射区域标签一起使用
- 在应用程序脚本中将 base64 编码的图像与 HtmlService 一起使用
- 如何使用xmlhttprequest将图像和其他数据一起发送
- 将视差与图像幻灯片一起使用
- Fancybox图像点击可以独立工作,但不能与我的其他代码一起工作
- 如何设置与CKEditor一起使用的图像路径
- 如何使用toDataURL()将图像作为背景图像与画布内容一起添加到一个图像中
- 如何在 AngularJS 中与其他参数一起上传 http.post 的图像文件
- 将 grunt-usemin 与动态生成的图像路径一起使用
- 以前添加的图像与新添加的图像一起显示,并插入到表中
- 如何将图像链接与 HTML 和 CSS 一起使用时,悬停时在其他位置显示图像
- 将图像组合在一起并在窗口加载时对图像进行动画处理
- BX 滑块随图像一起滑动外部字幕
- 如何在使用 Flask 后端时将图像和资产与 HTML 一起使用
- 通过Websocket将图像传输到WebGL Vs Canvas,也许还可以与worker一起传输
- 如何将悬停图像与 Twitter 引导下拉菜单一起使用
- 图像滑块和下拉菜单不能一起工作
- 两个图像刷新java脚本没有一起运行
- 将网页中的图像打印在一起