【问题标题】:improperly configured at /18/delete, Django views issue/18/delete 配置不当,Django 视图问题
【发布时间】:2022-11-16 04:05:36
【问题描述】:

我搜索了与我自己的问题类似的其他问题,但没有找到解决方案,所以我希望有人能帮助我找出我哪里出错了。

我正在尝试在我的博客程序中实现删除帖子选项,但是一旦您单击“删除”按钮,它就会抛出以下错误:

在 /18/delete/ 配置不当 Deletepost 缺少 QuerySet。定义 Deletepost.model、Deletepost.queryset 或覆盖 Deletepost.get_queryset()。

我几乎可以肯定它是我的 URLS.py 的问题,尽管我无法弄清楚到底是什么。

以下是有问题的代码:

视图.py

# delete post
class Deletepost(LoginRequiredMixin, DeleteView):
    form_class = Post
    success_url = reverse_lazy('blog:home')
    template_name = 'templates/post.html'

    def test_func(self):
        post = self.get_object()
        if self.request.user == post.author:
            return True
        return False

网址.py

urlpatterns = [
    # home
    path('', views.postslist.as_view(), name='home'),

    # add post
    path('blog_post/', views.PostCreateView.as_view(), name='blog_post'),

    # posts/comments
    path('<slug:slug>/', views.postdetail.as_view(), name='post_detail'),

    # edit post
    path('<slug:slug>/edit/', views.Editpost.as_view(), name='edit_post'),

    # delete post
    path('<int:pk>/delete/', views.Deletepost.as_view(), name='delete_post'),

    # likes
    path('like/<slug:slug>', views.PostLike.as_view(), name='post_like'),

]

post.html

&lt;a class="btn btn-outline-danger" href="{% url 'delete_post' post.id %}"&gt;Delete&lt;/a&gt;

感谢您的宝贵时间,我很抱歉提出这个琐碎的问题,但你们比我聪明得多!

【问题讨论】:

    标签: python django django-views django-urls blogs


    【解决方案1】:

    我认为应该是 model 而不是 form_class 所以:

    class Deletepost(LoginRequiredMixin, DeleteView):
        model = Post
        success_url = reverse_lazy('blog:home')
        template_name = 'templates/post.html'
    
        def test_func(self):
            post = self.get_object()
            if self.request.user == post.author:
                return True
            return False
    

    【讨论】:

    • 谢谢你让我的大脑几乎爆炸!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-18
    • 2011-03-04
    • 1970-01-01
    相关资源
    最近更新 更多