Django1.11 - 在本地主机上显示媒体
Django1.11 - Show media on localhost
我很难在本地系统上显示媒体。问题是:
{{ producer.img.url }}
给了我一个 url 相对于我正在浏览的页面的路径,所以它总是找不到文件。它实际上打印出如下内容:
media/media/djprofiles/john_0VtCrdA.jpg
这显然失败了(注意缺少首字母“/”)。
根据 Django 文档,我在 urls.py:
中添加了
urlpatterns = [
url(r'^i18n/', include('django.conf.urls.i18n')),
]
urlpatterns += i18n_patterns(
...
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
和settings.py如下:
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
MEDIA_URL = 'media/'
img
字段在models.py中定义如下:
img = models.ImageField(upload_to=settings.MEDIA_URL + 'djprofiles')
我知道已经有很多关于在本地系统上显示媒体的问题,但 none 似乎为我提供了一个可行的解决方案。
你试过了吗
MEDIA_URL = '/media/'
在settings.py?
我很难在本地系统上显示媒体。问题是:
{{ producer.img.url }}
给了我一个 url 相对于我正在浏览的页面的路径,所以它总是找不到文件。它实际上打印出如下内容:
media/media/djprofiles/john_0VtCrdA.jpg
这显然失败了(注意缺少首字母“/”)。
根据 Django 文档,我在 urls.py:
中添加了urlpatterns = [
url(r'^i18n/', include('django.conf.urls.i18n')),
]
urlpatterns += i18n_patterns(
...
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
和settings.py如下:
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
MEDIA_URL = 'media/'
img
字段在models.py中定义如下:
img = models.ImageField(upload_to=settings.MEDIA_URL + 'djprofiles')
我知道已经有很多关于在本地系统上显示媒体的问题,但 none 似乎为我提供了一个可行的解决方案。
你试过了吗
MEDIA_URL = '/media/'
在settings.py?