javascript - Django 为什么会出现此错误没有找到与查询匹配的用户配置文件
问题描述
我正在尝试实现加载更多按钮,因此我正在编写此视图以加载 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)
推荐阅读
- javascript - 当包有声明文件时,如何将 Javascript 库导入 Typescript
- reactjs - 打字稿useState:带有参数的子项中的SetState
- python - 如何从 sqlalchemy 中的上层访问子类?
- ethereum - Solidity:扩展已经部署的合约
- javascript - 在画布中,有没有办法判断 img.src 何时完成加载?
- python - Pyspark's df.writeStream generates no output [SOLVED]
- pivot - TradingView 图表上的水平线
- python - 为什么在检查界面时会出现语法错误?尝试使用 Python/argparse 为 Linux 制作 MAC 转换器
- c++ - 使用 SFML VertexArray 制作抛物线曲线:左侧未正确渲染
- python - 如何使函数可挑选,以便可以通过 scipy.optimize.differential_evolution 的并行版本将其最小化