再次播放音频时遇到问题。现在部署DEBUG = False。 这是我的设置:
STATIC_ROOT = '/home/bootuz/final/myapp/static/'
STATIC_URL = '/static/'
MEDIA_ROOT = '/home/bootuz/final/audio/'
MEDIA_URL = '/media/'
此代码我添加到urls.py
+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
模板:
<audio id="player" preload="auto">
<source src="{{ showword.audio.url }}" type="audio/mpeg">
</audio>
<button id="player_button" onclick="document.getElementById('player').play()"><img src="{% static 'images/audio.png' %}" alt="Play">
</button>
在控制台中我看到了这个错误:
答案 0 :(得分:1)
正如其他人在评论中所述,使用Django提供静态文件是不可取的。事实上,the documentation就static()
函数说明了这一点:
这不适合生产使用!对于某些常见的部署策略,请参阅Deploying static files。
并进一步指出:
此辅助函数仅在调试模式下,并且仅在给定的情况下有效 前缀是本地的(例如/ static /)而不是URL(例如 http://static.example.com/)。
此辅助函数也仅用于实际的STATIC_ROOT文件夹; 它不执行像静态文件发现 django.contrib.staticfiles。
有关在生产中提供静态文件的常见方案,请参阅linked documentation。