django-piston:DELETE处理程序中的request.data可用性

M. *_*yan 3 django rest http django-piston

django-piston似乎在请求对象到达Handler阶段之前创建了一个数据属性.例如,通过访问request.data,可以在PUT和POST处理程序中获得此数据.

但是,在DELETE处理程序中,数据不可用.

我想修改django-piston以使这些数据可用,但我不知道从哪里开始.有任何想法吗?数据属性源自何处?

M. *_*yan 5

我为自己解决了这个问题.简短的hacky答案是该方法

translate_mime(request)
Run Code Online (Sandbox Code Playgroud)

来自piston.utils需要在请求上运行以使数据属性可用.

对此的整体修复是在resource.py中对Piston源代码本身进行更改,以执行DELETE操作的translate_mime方法.目前它只能自动进行PUT和POST.

但是,就像我说的,你实际上只需在实际的处理程序方法中手动调用translate_mime,它就可以正常工作.