Django简历应用启动报错:admin.E108关于is_active字段的问题
解决Django Admin E108错误及页面显示问题
先处理admin.E108错误
错误提示is_active不属于Certificate模型的属性,但你的模型代码明明定义了该字段,核心原因集中在以下几点:
1. 未同步数据库迁移
给Certificate模型新增is_active字段后,必须执行迁移命令同步到数据库:
python manage.py makemigrations mainapp python manage.py migrate
执行完成后重启Django开发服务器,再尝试访问admin后台。
2. Django Admin缓存旧模型结构
开发环境下Django可能缓存了admin的配置,直接重启服务器即可清除缓存:
# 先终止当前运行的服务器,再重新启动 python manage.py runserver
3. 确认模型导入路径正确
检查admin.py开头的导入语句,确保是从当前app的models模块导入Certificate:
# admin.py必须包含这个导入 from .models import Certificate
如果导入了错误的模型类,也会出现字段找不到的情况。
移除is_active后页面显示异常的解决
移除该字段后应用能启动但页面异常,大概率是前端模板中用到了is_active字段,但此时模型与数据库未同步,导致模板渲染出错:
- 先按照上面的步骤修复
is_active字段的问题,确保模型与数据库完全同步。 - 检查HTML模板中所有用到
is_active的代码,确认语法正确,比如:
{% for cert in certificates %} {% if cert.is_active %} <!-- 证书内容渲染代码 --> {% endif %} {% endfor %}
- 清除浏览器缓存,或使用无痕模式打开页面,避免旧的CSS/JS缓存干扰显示。
内容的提问来源于stack exchange,提问作者Moonfrost
相关产品推荐
相关产品推荐

