我在使用 Django 上传图像时遇到问题

问题描述 投票:0回答:1

我目前正在完成一个 django 项目,但在使用 MEDIA 和上传图形图像时遇到问题。

在settings.py中,我添加了以下代码。

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

主页.html:

<img src="{{ MEDIA_URL }}image.png" alt="Uploaded Image" style="max-width: 100%; height:     auto;">  

首页->urls.py

if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

从html文件到图像的相对路径:media/graph/upload/image.png

我收到错误

Not Found: /graph/upload/image.png.

主要项目

--App
----settings.py 
--HomePage 
----HomePage.html 
----urls.py
--media 
----graph 
------upload 
--------image.png

感谢您的所有帮助!如果您需要更多代码,请告诉我,如果这是一个简单的错误,我只是不想让它变得超长。

我也尝试过对目录的路径进行硬编码,但这也不起作用,所以我认为我误解了 Django 的某些内容。

django django-media
1个回答
0
投票

如果您想在模板中使用 {{ MEDIA_URL }},请在 TEMPLATES 的 'context_processors' 选项中添加 'django.template.context_processors.media'。

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "APP_DIRS": True,
        "OPTIONS": {
            "context_processors": [
                "django.template.context_processors.media"
            ],
        },
    },
]
© www.soinside.com 2019 - 2024. All rights reserved.