【问题标题】:django 1.10 media images don't showdjango 1.10 媒体图像不显示
【发布时间】:2017-01-11 17:11:09
【问题描述】:

通过将以下内容添加到站点 urls.py,我已经在现有 django 1.7 项目中使用了 django 媒体图像:

urlpatterns = patters(
    url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
)

这个 url 结构在 django 1.10 中不起作用,所以我把它改成了这里推荐的 Django MEDIA_URL and MEDIA_ROOT:

urlpatterns = [

] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

这无法呈现任何上传的媒体图像。我可以使用 django 1.10 的等效媒体 url 模式吗?

【问题讨论】:

    标签: python django django-staticfiles django-media django-1.10


    【解决方案1】:

    你可以使用这个: (Django docs 1.10 Serving files uploaded by a user during development)

    urlpatterns = [
       ...
    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    

    或者您可以使用它(如果您只希望在开发中使用 Debug = True 在您的设置中):Django docs 1.10 Serving files in development

    if settings.DEBUG:
        urlpatterns += [
            url(r'^media/(?P<path>.*)$', serve, {
                'document_root': settings.MEDIA_ROOT,
            }),
        ]
    

    对我来说,{{ MEDIA_URL }} 在我的模板文件中不再起作用,我使用了 {% get_media_prefix %}

    例如:

    <img src="{% get_media_prefix %}{{ product.image }}">
    

    【讨论】:

      猜你喜欢
      • 2017-07-08
      • 1970-01-01
      • 2017-04-04
      • 2021-10-12
      • 2017-10-15
      • 1970-01-01
      • 2017-01-08
      • 2015-05-07
      • 2021-06-24
      相关资源
      最近更新 更多