在rest_framework中使用django消息框架

时间:2014-12-13 06:40:31

标签: django django-rest-framework django-messages

如何让django消息框架与rest_framework一起使用?

这是我的观点

@api_view(['GET', 'POST'])
def myview(request):
    if request.method == 'GET':
        #return a Response object
    else:
        #process post data
        messages.success(request, 'Success')
        return Response(response)

我遇到以下错误

add_message() argument must be an HttpRequest object, not 'Request'

这是因为rest_framework不使用正常的HttpRequest对象 在django默认情况下。

如何将消息框架与rest框架一起使用?

1 个答案:

答案 0 :(得分:23)

DRF视图不使用HttpRequest但使用rest_framework.request.Request,(阅读here)您可以使用

访问所需的对象
 messages.success(request._request, 'Success')

无论如何,只有在使用BrowsableAPIRenderer

时,此代码才有意义