Django-如何在views.py中正确处理Http请求

时间:2018-08-30 11:26:21

标签: django

我在这里有一个初学者的问题。 假设我有url,它从数据库中返回对象的JSON数组。像这样:

def my_model_as_json(request):
    print "request to retrieve the rules list"
    if request.method == "GET":
        object_list = Policy.objects.all() #or any kind of queryset
        json_response = serializers.serialize('json', object_list, fields=('name', 'last_update'))
        return HttpResponse(json_response, content_type='application/json')

我确定请求是GET,因此这里是否需要检查其他条件?
如果请求方法不是GET,我需要返回一些东西吗?

1 个答案:

答案 0 :(得分:0)

在您的代码中,如果传入请求不是GET,则将收到错误消息,因为如果请求是GET,则仅返回HttpResponse。如果您不依赖任何输入,则只需忽略if request.method == "GET",您的代码就可以正常工作。