在我的项目开发过程中,我可以通过我的模板显示视频文件,如下所示:
<video width="200" controls>
<source src='{{ MEDIA_URL }}{{ post.video }}' type='video/mp4'>
Your browser does not support the video tag.
</video>
MEDIA_URL
被定向到settings.py:中的media
文件夹
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
现在我正在生产和使用数字海洋空间,我的静态和媒体文件都由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>