В моей пользовательской модели у меня есть свойство с именем profilePic
. Это установлено для изображения в моей папке media
в root моего проекта. Я отображаю profilePic
изображение в шаблоне, и оно отображается успешно. Однако на моей странице администратора, когда я щелкаю ссылку, установленную для атрибута profilePic
, я получаю сообщение об ошибке 404
.
Вот мой models.py :
class User(AbstractUser):
profilePic = models.ImageField(upload_to='profile_pics/', default='media/default-profile.png')
settings.py :
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
urls.py :
urlpatterns = [
path('admin/', admin.site.urls),
path('users/', include('users.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
template :
<!DOCTYPE html>
<html lang="en">
<body>
<img src="{{ user.profilePic }}"></img>
</body>
</html>
Изображение успешно отображается в браузере, однако в админке, когда я щелкаю путь, который ссылается на файл, я получаю s 404 Page Not Found Error
. URL-адрес меняется, когда я щелкаю путь, он тоже меняется http://localhost:8000/media/media/default-profile.png
.
В URL-адресе указывается дополнительный /media/
. Это может быть связано с тем, что я установил свойство default
в атрибуте profilePic
, однако, когда я удаляю media/
и начало свойства default
, изображение больше не может быть просмотрено в браузере, однако можно посмотреть в админке.
Кто-нибудь знает, почему возникает эта проблема? Спасибо.