首页 > 解决方案 > AttributeError:模块“posts.views”没有属性“add_comment_to_post”

问题描述

我是 python 新手,在编辑 views.py 时向我的 djang 项目添加评论选项,同时在输入时显示

python3 manage.py runserver

终端显示以下内容:

文件“/home/user/Documents/DJANGO-COURSE-2.xx/DJANGO_COURSE_2.xx/21-Social_Clone_Project/simplesocial/posts/urls.py”,第 12 行,在 path('post//comment/',views. add_comment_to_post,name='add_comment_to_post'),AttributeError:模块'posts.views'没有属性'add_comment_to_post'

以及 views.py 和 urls.py 文件:

图像描述是 view.py 文件

网址的图片描述

标签: pythondjangodjango-viewsdjango-urlspython-django-storages

解决方案


问题是您的函数缩进不正确。

add_comment_to_postdelete当前是先前定义的类的一部分(例如具有功能)。

所以如果你改变你的缩进错误就会消失,例如


class MyView(...):
    ...
    def delete(self, *args, **kwargs):
        messages.success(self.request, 'Post Deleted')
        return super().delete(*args, **kwargs)


# next method should not have the same indentation of `delete`
def add_comment_to_post(request, pk):
    ....

推荐阅读