django - 在我的 Django 项目中从 Digital Ocean Spaces 加载静态文件时遇到问题
问题描述
在我的项目开发过程中,我可以通过我的模板显示视频文件,如下所示:
<video width="200" controls>
<source src='{{ MEDIA_URL }}{{ post.video }}' type='video/mp4'>
Your browser does not support the video tag.
</video>
MEDIA_URL
被定向到media
settings.py中的一个文件夹:
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
现在我正在生产和使用 Digital Ocean Spaces,我的静态和媒体文件都由STATIC_URL
. 当用户创建包含视频文件的帖子时,我可以在 Spaces 中看到它上传,我也可以通过 Django 管理员查看它。但我找不到让它在网站上播放所需的代码。我只看到一个灰色框告诉我该文件不受支持。我尝试过更改{{ MEDIA_URL}}
为{{ STATIC_URL }}
,我也尝试过<source src='{% static "post.video" %}' type='video/mp4'
,但这些都没有奏效。我在网上的任何地方都找不到答案。希望有人可以提供帮助。
解决方案
解决方案是将模板更改为:
<video width="200" controls>
<source src='{{ STATIC_URL }}{{ post.video.url }}' type='video/mp4'>
Your browser does not support the video tag.
</video>
推荐阅读
- python - 使用 if 语句打印函数
- javascript - 检查日期是否在时间范围内
- wordpress - 如何删除我的 wordpress 网站顶部的空白
- c - 为什么我的 while() 语句陷入无限循环?
- css - 在小型设备中,如何使用 bootstrap4 将顶部 div 放在底部,底部 div 放在顶部?
- ffmpeg - 使用ffmpeg复制时如何排除eia_608字幕?
- java - Akka如何连接source、flow和sink
- 32bit-64bit - 在 WebAssembly 中同时拥有 32 位和 64 位数字的基本原理是什么?
- ruby-on-rails - 录像机磁带导轨
- react-native - React-Native,组件间共享状态(react-native-router-flux)