You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django框架下CustomUser关联学生账号上传头像无法正常显示问题

修复方案

  1. 修正模板头像调用逻辑
    你在视图中已经将对应的学生实例student传递到模板上下文中,头像字段profile_pic直接定义在Students模型下,不需要绕request.admin.user路径,同时要增加非空判断避免用户未上传头像时触发异常,修正后代码如下:
{% if student.profile_pic %}
<img src="{{ student.profile_pic.url }}" class="img-circle elevation-2" alt="User Image">
{% else %}
<!-- 未上传头像时展示默认头像,可自行替换路径 -->
<img src="/static/img/default_avatar.png" class="img-circle elevation-2" alt="默认头像">
{% endif %}
  1. 确认媒体资源配置正确
    如果修改路径后还是无法加载,检查Django项目的媒体文件配置是否完整:
  • 项目settings.py中添加如下配置:
# 媒体文件访问前缀
MEDIA_URL = '/media/'
# 媒体文件存储本地路径
MEDIA_ROOT = BASE_DIR / 'media'
  • 项目根路由urls.py中添加媒体文件访问路由:
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    # 原有路由保持不变
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
  1. 验证数据存储正确性
    如果以上两步都完成还是无法显示,确认上传头像的逻辑是否正确,检查对应学生记录的profile_pic字段是否已经存储了正确的文件路径。

内容的提问来源于stack exchange,提问作者M Ismail

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 23:24:04