【发布时间】:2021-07-24 12:25:08
【问题描述】:
我正在尝试为每个用户加载个人资料图片,用户的默认个人资料图片是default.jpg
但发生的是我无法加载个人资料图片Page Not found Error。
运行我的程序后,在我的项目文件中创建的媒体目录
Profile_picture 目录,我将我的 default.jpg 保存在媒体和
上传的头像保存在Profile_picture
models.py:
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
profile_picture = models.ImageField(default='default.jpg',upload_to='Profile_pics')
settings.py
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
urls.py
from django.contrib import admin
from django.urls import path,include
from users import views as user_view
from django.contrib.auth import views as auth_views
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('',include('CovidHelp.urls')),
path('profile/',include('users.urls')),
path('register/',user_view.register,name='register'),
path('login/',auth_views.LoginView.as_view(template_name='users/login.html'),name='login'),
path('logout/',auth_views.LogoutView.as_view(template_name='users/logout.html'),name='logout'),
path('admin/', admin.site.urls),
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
错误信息:
Page not found (404)
Request Method: GET
Request URL: http://127.0.0.1:8000/media/Profile_pics/itachi.jpg
Using the URLconf defined in MyCovidHelp.urls, Django tried these URL patterns, in this order:
[name='Home']
about/ [name='About']
profile/
register/ [name='register']
login/ [name='login']
logout/ [name='logout']
admin/
^static/(?P<path>.*)$
The current path, media/Profile_pics/itachi.jpg, didn't match any of these.
【问题讨论】:
-
我没有看到您在 URL 模式中引用了 MEDIA_URL 和 MEDIA_ROOT -- 您只有 STATIC_URL
标签: django django-models django-media