我在django rest-framework中编写了一个应用程序:My views.py:

class tagList(generics.ListCreateAPIView,APIView):

    model = tags
    serializer_class = getAllTagsDetailSerializer
    def get_queryset(self):
        print "q1"
        print self.request.QUERY_PARAMS.get('tag', None)
        print self.request.user
        print "q1"
        if tags.objects.filter(tag='burger')!= None:
             return tags.objects.filter(tag='burger')
        else:
            content = {'please move along': 'nothing to see here'}
            return Response(content, status=status.HTTP_404_NOT_FOUND)

如果查询返回None,我想返回错误状态代码。 但问题是,如果我尝试设置响应它会抛出错误:

Exception Type: TypeError
Exception Value:    
object of type 'Response' has no len()
Exception Location: /usr/local/lib/python2.7/dist-packages/django/core/paginator.py in _get_count, line 53

否则,如果查询结果为“无”,则表示正常。 如何在Django rest-framework上设置状态代码。

===============>>#1 票数:5

该方法应该返回一个QuerySet,而不是一个Response对象,我敢打赌你应该抛出一个Exception ,无论是APIException还是Http404

无论如何,你的处理看起来很奇怪,我认为你应该只返回QuerySet,如果结果为空,框架将处理。 该方法应如下所示:

def get_queryset(self):
    return tags.objects.filter(tag='burger')

===============>>#2 票数:2 已采纳

你能试试吗?

model = tags # Model name
serializer_class = getAllTagsDetailSerializer # Call serializer

def get_queryset(self):
    key = self.request.QUERY_PARAMS.get('appKey', None)
    getTagName = self.request.QUERY_PARAMS.get('tagName')
    keyData = app.objects.filter(appKey=key).exists()    
    try:
        if keyData == True:
            return tags.objects.filter(tag=getTagName)
        else:
            raise exceptions.PermissionDenied
    except app.DoesNotExist:
        pass

我认为它会起作用....

  ask by translate from so

未解决问题?本站智能推荐:

2回复

django每周每月一次的方式对查询元素进行排序

我得到了一个人员列表以及他们从同一个项目中的api中获取的测试。 我希望用户可以选择查看城市中有三个选项的测试次数 - 每日/每周/每月。 models.py 每个城市的人们的json文件就像http://pastebin.com/pYLBjrjh一样生成 相关的views
1回复

'朋友'没有属性'META'错误未知原因-Django

我有一个视图和模板,它们创建查询来搜索数据库中的对象。 我还有一些列表,这些列表将根据不同的查询集创建一个用户名列表。 我通过搜索的查询集和两个待处理的列表和朋友。 然后,我检查搜索查询中的用户名是否位于列表中。 如果它们在列表中,则将根据其所在的列表显示不同的消息。如果它不在任何列表中
1回复

Django REST Framework:在列表响应中呈现表单元素

如何使用Django REST Framework来呈现具有用户可编辑的特定字段的模型实例列表? 我进入Django只有几个月,而且只有几天时间进入DRF。 我尝试了几种不同的方法,但似乎无法绕过它。 在使用DRF之前,我的工作流程就是设置一个视图(和相关的URL):查询我的模型,
1回复

Django Rest Framework分页的示例模板

我尝试首次使用Django REST框架,并在教程中没有模板示例,我可以使用什么模板? 我尝试了template_name ='authorListAjax.html',但是我得到了这个响应http://imgur.com/fMlyXDN views.py urls.py
1回复

Django Rest Framework-前端选择

我试图弄清楚DRF如何与前端啮合。 我一直在寻找使用django通常使用的典型模板视图的教程,但是我找不到任何模板。 我可以找到很多使用REACT JS和Angular JS作为前端的DRF教程和文档。 有人可以解释为什么会这样,为什么没有使用典型html模板的教程? 是方便,效率,
1回复

如何将ImageString转换为Image Django Rest Framework?

我正在使用Asynchttp从android接收我的图像字符串,我想将该图像字符串转换为Django Rest Framework中的图像。只是转换它而不将其存储在ImageField中 * Model.py * Serializer.py * Views.py
1回复

如何在Django中特定类别下显示子类别?

我的代码存在一些问题,同一子类别显示在所有类别下,如果一个类别没有子类别,那么该类别也显示了子类别,我想显示一个类别是否具有子类别,那么它应该显示在下拉列表中否则应为空白。 这是我的models.py文件... 这是我的views.py文件 这是我的header.html文
1回复

如何在Django中显示不同项的总和?

我想显示所有属于用户的产品的所有不同类别的总和。 我在网上搜索,但是所有尝试的操作都无效。 您可以在下面找到模型,视图和模板。 它没有给我任何东西。 模型: 看法: 模板:
2回复

如何在django中显示其他用户信息

我正在创建一个用户可以查看其他用户个人资料的网站,但问题是当用户输入另一个用户个人资料时,它会显示他的个人信息 这是urls.py文件代码 这是view.py文件代码 这是models.py文件 user_posts.html文件 在模板中,它显示用户名,但
3回复

Django 1.11:模板中的URL函数无法按预期工作

我创建了2个测试应用程序test1和test2,并在视图和url文件中添加了相同的功能。 问题在于您访问哪个应用程序都没有关系,相同的链接(应用程序名称/链接)显示为href。 无论我访问http://127.0.0.1:8000/test1还是http://127.0.0.1/test