繁体   English   中英

Django 为什么会收到此错误找不到与查询匹配的用户配置文件

[英]Django why getting this error No user profile found matching the query

我正在尝试实现加载更多按钮,因此我正在为加载 json 数据编写此视图,但我不明白为什么会出现此错误。 No user profile found matching the query Raised by: members.views.UserProfileUpdate

这是我的观点:

class PostJsonListView(View):
    def get(self, *args, **kwargs):
        print(kwargs)
        upper = kwargs.get('num_posts')
        lower = upper - 3 
        posts = list(Blog.objects.values()[lower:upper])
        posts_size = len(Blog.objects.all())
        max_size = True if upper >= posts_size else False
        return JsonResponse({'data': posts, 'max': max_size}, safe=False)

这是我的博客应用 urls.py

path('posts-json/<int:num_posts>',PostJsonListView.as_view(),name='json-view')

这是我的会员应用 urls.py

path('<slug:slug>/', UserProfileUpdate.as_view(), name='update-profile'),

如果我输入了这样的错误网址http://127.0.0.1:8000/sassassdsadasdd/给我同样的错误No user profile found matching the query Raised by: members.views.UserProfileUpdate

您在UserProfileUpdate视图中,使用slug获取配置文件对象,如下所示:

Profile.objects.get(username=slug)

但! 您应该使用get_object_or_404快捷功能。

from django.shortcuts import get_object_or_404
get_object_or_404(Profile, username=slug)

参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM