kue*_*kue 3 python django debugging media-url python-3.x
当 DEBUG=TRUE 时,media_url 正在工作,但 DEBUG = False 时,返回不工作。
这是我的设置文件。
设置.py
DEBUG = False
...
MEDIA_URL = "/pics/"
MEDIA_ROOT = BASE_DIR
Run Code Online (Sandbox Code Playgroud)
urls.py
urlpatterns = [
....
....
] + static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
Run Code Online (Sandbox Code Playgroud)
首页.html
...
<img src="{{ post.image.url}}" ..>
Run Code Online (Sandbox Code Playgroud)
模型.py
class Post(models.Model):
title = models.CharField(max_length=255)
pub_date = models.DateTimeField()
image = models.ImageField(upload_to="media/")
Run Code Online (Sandbox Code Playgroud)
也许,这个设置是推荐的调试模式。
我应该改变这个设置什么。
根据文档:
此帮助器函数仅在调试模式下工作,并且仅当给定前缀是本地(例如 /media/)而不是 URL(例如 http://media.example.com/)时。
他们提到的辅助函数是:+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
在生产中为 nginx 设置静态和媒体文件非常简单,DigitalOcean 有一个很棒的指南。静态部分只有几行:
location /media/ {
root /home/sammy/myproject;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2921 次 |
| 最近记录: |