Django почему возникает эта ошибка Не найден профиль пользователя, соответствующий запросу

Я пытаюсь реализовать кнопку load more, поэтому я пишу это представление для загрузки 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'),

если я ввожу любой неправильный url, например, вот так 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)

refrence

Вернуться на верх