python - 包含 MEDIA_ROOT 设置时找不到 Django 管理页面
问题描述
这是我的第一个问题,所以请指出正确的方向,以防我错过重要的事情☺️
所以我的问题如下:我目前正在使用 Django 创建一个网站,该网站应该列出数据库中的各种项目。每个项目都有与之关联的图片。该图片的路径保存在数据库中(每张图片都添加models.ImageField()
到项目模型中)。为了为他们服务,我MEDIA_ROOT = os.path.join(BASE_DIR, 'main/media')
添加settings.py
了以下代码段并将以下代码段添加到我urlpatterns
的 in 中urls.py
:+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
现在到了问题的关键:一切正常,除了我现在无法打开我的管理面板。媒体文件在项目概述中按预期提供,但是当我尝试打开 /admin 页面时,我收到以下错误消息:
Page not found (404)
“/Users/.../main/media/admin” does not exist
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/
Raised by: django.views.static.serve
一旦我+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
从我的 url 模式中删除,管理页面就会再次正常工作,但是不再提供媒体文件。
有人可以告诉我我在这里破坏了什么吗?非常感谢!
解决方案
我有同样的问题。我在我的网站上有一个链接,当按下该链接时将我带到管理面板。
错误是我错过了一个斜杠。
这不起作用:
<a href="/admin">Admin</a>
这有效:
<a href="/admin/">Admin</a>
推荐阅读
- python - 将字符串附加到具有公共列值的数据框中的列表时重复
- assembly - 011111100 在此 LC-3 代码中指的是什么?
- java - android java从firestore上传和检索图片
- node.js - 处理issuer为Organization Authorization的情况
- sql - 在缺失的字段上合并
- java - 如何在表和 java 中表示 avg ± stddev
- java - 如何计算一行中作为方法参数给出的正值的数量?
- python - 使用vectorise时在python numpy.mean函数中遇到奇怪的问题
- amazon-web-services - 无法使用 Spark 从 s3 存储桶中读取部分文件
- python - 嵌入受密码保护的pdf?