Django不调用函数且无法输出数据库中Topic数据如何解决?
Django Topic数据不渲染问题解决方案
排查步骤及修复方法
- 视图二选一,避免逻辑冲突
你同时定义了TopicListView类视图和video函数视图,两者逻辑完全重复,选其中一个即可:- 若使用函数视图:保持当前urls.py绑定逻辑即可,不需要额外修改
- 若使用类视图:将urls.py中对应路由修改为:
可以直接删除冗余的path('video/', views.TopicListView.as_view(), name='topic')video函数视图。
- 验证数据是否存在及字段名正确性
执行python manage.py shell进入交互环境,依次执行以下命令验证数据:
如果返回空QuerySet,说明你没有在admin后台成功录入Topic数据;如果返回的字段列表中没有# 把your_app_name替换为你自己的app名称 from your_app_name.models import Topic # 查看是否有录入的数据 print(Topic.objects.all()) # 查看第一条数据的字段名是否正确 if Topic.objects.first(): print(dir(Topic.objects.first()))name_topic,说明模板里字段名写错了,替换为实际字段名即可。 - 修复路由写法避免匹配错误
不要混用path和旧版url写法,统一用path更不容易出错,将video路由修改为:
访问时统一带末尾斜杠path('video/', views.video, name='topic')/video/即可。 - 可选优化:修复静态资源路径写法
模板中不要写死../static/相对路径,favicon引用修改为以下规范写法,避免部署时出现资源找不到问题:<link rel="icon" href="{% static 'images/favicon.jpg' %}" type="image/x-icon"> <link rel="shortcut icon" href="{% static 'images/favicon.jpg' %}" type="image/x-icon">
内容的提问来源于stack exchange,提问作者nikitakiliv
相关产品推荐
相关产品推荐

