【发布时间】:2021-08-13 17:17:08
【问题描述】:
我在 Django REST 框架中有我的 API:
这是我的models.py:
class myModel(models.Model):
user_email = models.CharField(max_length= 200, null= False)
这是我的views.py:
class GetItemsByEmail(generics.ListAPIView):
def get_queryset(self):
email_items = self.request.query_params.get("user_email")
if(email_items is not None):
itemsReturned = myModel.objects.all().filter(user_email = email_items)
return Response(data= itemsReturned)
这是我的 urls.py:
url_patterns = [
path('users/account=<str:id>/items', GetItemsByEmail.as_view()),
]
我的问题:
我得到一个空列表,从对上述端点进行 API 调用一无所获。 我想获取与特定电子邮件关联的数据库中的所有项目,但过滤器不起作用? 这背后的原因是什么?
【问题讨论】:
-
在django模型上根据条件过滤,需要使用下面的形式
myModel.objects.filter(user_email = email_items)过滤时不要使用.all()
标签: python django django-models django-rest-framework django-views