首页 文章

如何从django rest框架Request获取django HttpRequest?

提问于
浏览
9

我正在尝试使用django messages frameworkModelViewSet.create() 之后显示消息:

class DomainModelViewSet(ModelViewSet):
    def create(self, request):
        super(DomainModelViewSet, self).create(request)
        messages.success(self.request, "Domain Added.")
        return HttpResponseRedirect(reverse('home'))

但我得到:

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

那么,如何使用Django HttpRequest 来自django rest framework Request

1 回答

  • 11

    我通过源代码,在输入问题时找到了答案 .

    Django REST框架在 _request 属性中保留 HttpRequest (或至少一个与django消息兼容) . 所以,这有效:

    messages.success(self.request._request, "Domain Added.")
    

相关问题