File tree Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -373,7 +373,7 @@ def POST(self):
373
373
if not _hasattr (self , '_data' ):
374
374
self ._load_data_and_files ()
375
375
if is_form_media_type (self .content_type ):
376
- return self .data
376
+ return self ._data
377
377
return QueryDict ('' , encoding = self ._request ._encoding )
378
378
379
379
@property
Original file line number Diff line number Diff line change 7
7
from django .contrib .auth import authenticate , login , logout
8
8
from django .contrib .auth .models import User
9
9
from django .contrib .sessions .middleware import SessionMiddleware
10
+ from django .core .files .uploadedfile import SimpleUploadedFile
10
11
from django .test import TestCase , override_settings
11
12
from django .utils import six
12
13
@@ -78,6 +79,16 @@ def test_request_POST_with_form_content(self):
78
79
request .parsers = (FormParser (), MultiPartParser ())
79
80
self .assertEqual (list (request .POST .items ()), list (data .items ()))
80
81
82
+ def test_request_POST_with_files (self ):
83
+ """
84
+ Ensure request.POST returns no content for POST request with file content.
85
+ """
86
+ upload = SimpleUploadedFile ("file.txt" , b"file_content" )
87
+ request = Request (factory .post ('/' , {'upload' : upload }))
88
+ request .parsers = (FormParser (), MultiPartParser ())
89
+ self .assertEqual (list (request .POST .keys ()), [])
90
+ self .assertEqual (list (request .FILES .keys ()), ['upload' ])
91
+
81
92
def test_standard_behaviour_determines_form_content_PUT (self ):
82
93
"""
83
94
Ensure request.data returns content for PUT request with form content.
You can’t perform that action at this time.
0 commit comments