Hi,
I don't really know if what I'm posting is expected behaviour or not (hence not going straight to Trac), but I am seeing very odd behaviour using django.test.client.Client.put.
The documentation
describes the put method as "acting just like Client.post()", but it seems this isn't really true at all. post() preserves data which has been encoded into the query string (and is documented to do so), but it seems that put() does not. It is nearly always overwritten by what the developer likely intended for the request body.
Here's the offending code (please forgive the GitHub links).
The curious thing is this seems to have been implemented as a response to a ticket that I'm having trouble following, #11371 (a bit of a brain overload today).
Is this really intended behaviour?
—Oliver