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

为课程博客添加评论区时遇AttributeError问题求助

问题解决:Manager isn't accessible via Lesson instances

错误根源

你模板里的代码错误调用了模型实例的管理器:

{% url 'lang_learning_app:lesson_detail' lesson.published.year lesson.published.month lesson.published.day lesson.slug %}

这里的lesson.published是你在Lesson模型里定义的类级管理器(published = PublishedManager()),管理器只能通过模型类(比如Lesson.published)访问,不能通过模型实例(lesson对象)调用。而你实际要获取的是Lesson实例的发布时间字段publish(DateTime类型,包含year/month/day属性)。

修复步骤

直接把模板里的lesson.published替换成lesson.publish:

<form action="{% url 'lang_learning_app:lesson_detail' lesson.publish.year lesson.publish.month lesson.publish.day lesson.slug %}" method="post" name="commentform" class="row comment-form">

额外验证

你的Lesson模型里的get_absolute_url方法已经正确使用了self.publish,views里的redirect逻辑没问题,所以只需要修正模板里的这几处参数即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 01:40:13