HTML5 播放器在网页上显示,但 mp3 声音不播放
Posted
技术标签:
【中文标题】HTML5 播放器在网页上显示,但 mp3 声音不播放【英文标题】:HTML5 player shows on webpage but, mp3 sound not playing 【发布时间】:2020-03-14 05:48:26 【问题描述】:我是编程新手,我正在尝试在播放器正在显示的 django 网页上放置一个 mp3 文件和播放器,但是歌曲没有播放。
**models.py**
from django.db import models
from django.contrib.auth.models import User
class Song(models.Model):
name = models.CharField(max_length=125)
audio_file = models.FileField('media/')
**audio.html**
<!DOCTYPE html>
<html>
<body>
<audio controls>
<source src="JesusChrist.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
</body>
</html>
**media folder**
JesusChrist.mp3
**Settings.py**
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'firegod/static/media')
]
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'media')
STATIC_URL = '/media/'
【问题讨论】:
看看这个Simple Is Better Than Complex 是的,我看过了,但还是有问题 【参考方案1】:This video 是一个很好的参考,应该把所有的东西都拼出来。他展示了文件上传后的去向以及如何在模板中访问它们。
你遇到的另一个问题是:
# Sets STATIC_ROOT
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
# Sets STATIC_URL
STATIC_URL = '/static/'
# Overwrites STATIC_ROOT
STATIC_ROOT = os.path.join(BASE_DIR, 'media')
# Overwrites STATIC_URL
STATIC_URL = '/media/'
我相信你想要的是:
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
然后您应该可以在以下位置找到您的文件
src="media/audio.mp3"
。如果需要,print
上传文件的 url,以便您知道在哪里找到它。
我正要深入研究这个,所以我可能有点偏离,尽管我知道上面链接的视频非常有益。
【讨论】:
以上是关于HTML5 播放器在网页上显示,但 mp3 声音不播放的主要内容,如果未能解决你的问题,请参考以下文章