我如何使用html 5的音频标签播放已在基于django的应用程序中上传的音频文件。
models.py-Link
settings.py-Link
在我的模板中,我以以下方式使用audio
标记-
{% for file in audio %}
<li>
<h4>{{ file.title }}</h4>
<div id="name"><a href="{{ file.audio_file }}" target="_blank">{{ file.name }}</a></div>
<div id="play"><audio src="{{ file.audio_file }}" controls="controls">
Your browser does not support the audio element.
</audio></div>
</li>
{% endfor %}
但是我无法播放该文件。
最佳答案
根据您的设置,您不能播放该文件,因为:
{{ file.audio_file }}
返回保存在数据库中的值,这是媒体文件的绝对路径,例如http://localhost:8000/Users/test/django_app/media/test.wav
要解决此问题,您需要:
models.py
class AudioFile(models.Model):
audio_file = models.FileField(upload_to="music")
upload_to-将被添加到MEDIA_ROOT设置的路径,以确定url属性
{{ file.audio_file.url }}
正确引用上载文件关于python - 通过Django应用程序中的音频标签播放音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25101760/