来自媒体文件夹的图像不显示 django 模板

Images from media folder is not displaying django template

我的媒体文件夹中有图像,我想显示它们,但 Django 不显示静态文件夹以外的图像。 在我的设置中

STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static'),]
MEDIA_ROOT = BASE_DIR
MEDIA_URL = '/media/'

在我的 urls.py url 模式之后,我添加了这个

+ static(MEDIA_URL, document_root=MEDIA_ROOT)

在我的模板中

<img class="card-img-top" style="" src="{{result.object.thumbnail.url}}" alt=""></a>               
   <p>{{result.object.thumbnail.url}}</p>

显示的是正确的路径但没有显示图像,我无法找出问题所在。谢谢

您的 MEDIA_ROOT 有项目根目录的路径。您必须加入它,您 media 的目录。 (我想 media/ 是您上传所有媒体文件的目录名称) 我认为你应该像那样 MEDIA_ROOT

 MEDIA_ROOT = os.path.join(BASE_DIR,'media')

MEDIA_ROOT 有你项目的根路径。 MEDIA_URL 必须正确。检查以下 您的项目setting.py

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

urls.py 项目

 urlpatterns = [
                  url(r'^admin/', admin.site.urls),
                  # url('', include('app1.urls')),
                  url('home/', myapp_views.index)
              ] + static(settings.MEDIA_URL, 
             document_root=settings.MEDIA_ROOT)

过去 5 天我遇到了同样的错误,遵循 django 文档,许多教程但对我没有用,但最终我找到了解决方案

我在家里显示 index.html 意味着我没有在我的应用程序和项目 url 文件 url 的 url 中给出任何端点

app/urls.py

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url('', 'views.index', name='index page'),
]

project/urls.py

urlpatterns = [
                  url(r'^admin/', admin.site.urls),
                  # url('', include('app1.urls')),
                  url('', myapp_views.index)
              ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

其余代码保持不变并且我在两个文件中更改了以下内容

app/urls.py

    url('home/', 'views.index', name='index page'),

project/urls.py

 url('home/', myapp_views.index)

这对我有用。如果也适合您,请采纳答案

这是我来自 django v3.2 运行 wagtail 的 HTTP 日志的一部分。看起来 django 正在 尝试 告诉我丢失的媒体在哪里,但无法告诉我。因为这是一个带有“特色页面”图库子图像的灌木丛页面,所以我浏览器中的视图源没有显示图像文件尝试,但我假设它与 OP 配置错误的问题相同 MEDIA_ROOT。奇怪的是,当我在 wagtail 管理中打开子页面时,在页面的链接图像中没有看到任何错误。任何人都知道为什么丢失的图像不会冒泡到 HTTP 日志,或者是什么导致“media/not-found”替换导致 404 的“真实”项目?

[25/Aug/2021 20:28:53] "GET /static/wagtailadmin/images/bg-dark-diag.svg HTTP/1.0" 200 700

未找到:/media/not-found [25/Aug/2021 20:29:18] "GET /media/not-found HTTP/1.0" 404 3252

未找到:/media/not-found [25/Aug/2021 20:29:18] "GET /media/not-found HTTP/1.0" 404 3252