mirror of
https://github.com/django/django.git
synced 2025-07-05 10:19:20 +00:00
newforms-admin: Modified handling of request.POST and request.FILES to match the FileField changes introduced to trunk in [5219], which were merged to newforms-admin in [5228]. File uploads on inline FormSets will not be handled correctly.
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@5830 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
571b1b8c11
commit
4cc0d9375e
@ -417,13 +417,10 @@ class ModelAdmin(BaseModelAdmin):
|
|||||||
ModelForm = forms.form_for_model(model, formfield_callback=self.formfield_for_dbfield)
|
ModelForm = forms.form_for_model(model, formfield_callback=self.formfield_for_dbfield)
|
||||||
|
|
||||||
inline_formsets = []
|
inline_formsets = []
|
||||||
if request.POST:
|
if request.method == 'POST':
|
||||||
new_data = request.POST.copy()
|
form = ModelForm(request.POST, request.FILES)
|
||||||
if opts.has_field_type(models.FileField):
|
|
||||||
new_data.update(request.FILES)
|
|
||||||
form = ModelForm(new_data)
|
|
||||||
for FormSet in self.get_inline_formsets():
|
for FormSet in self.get_inline_formsets():
|
||||||
inline_formset = FormSet(data=new_data)
|
inline_formset = FormSet(data=request.POST)
|
||||||
inline_formsets.append(inline_formset)
|
inline_formsets.append(inline_formset)
|
||||||
if all_valid(inline_formsets) and form.is_valid():
|
if all_valid(inline_formsets) and form.is_valid():
|
||||||
return self.save_add(request, model, form, inline_formsets, '../%s/')
|
return self.save_add(request, model, form, inline_formsets, '../%s/')
|
||||||
@ -470,13 +467,10 @@ class ModelAdmin(BaseModelAdmin):
|
|||||||
ModelForm = forms.form_for_instance(obj, formfield_callback=self.formfield_for_dbfield)
|
ModelForm = forms.form_for_instance(obj, formfield_callback=self.formfield_for_dbfield)
|
||||||
|
|
||||||
inline_formsets = []
|
inline_formsets = []
|
||||||
if request.POST:
|
if request.method == 'POST':
|
||||||
new_data = request.POST.copy()
|
form = ModelForm(request.POST, request.FILES)
|
||||||
if opts.has_field_type(models.FileField):
|
|
||||||
new_data.update(request.FILES)
|
|
||||||
form = ModelForm(new_data)
|
|
||||||
for FormSet in self.get_inline_formsets():
|
for FormSet in self.get_inline_formsets():
|
||||||
inline_formset = FormSet(obj, new_data)
|
inline_formset = FormSet(obj, request.POST)
|
||||||
inline_formsets.append(inline_formset)
|
inline_formsets.append(inline_formset)
|
||||||
|
|
||||||
if all_valid(inline_formsets) and form.is_valid():
|
if all_valid(inline_formsets) and form.is_valid():
|
||||||
|
Loading…
x
Reference in New Issue
Block a user