Fixed #7667: fixied FileField.save_file for inline related objects. This is really just papering over a bigger problem that should get fixed either by newforms-admin or the file-storage refactoring, but this fix makes the admin work until either of those things happen. Thanks, oggy.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7906 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
c121ff4046
commit
5f73e2c4fa
|
@ -835,12 +835,14 @@ class FileField(Field):
|
||||||
def save_file(self, new_data, new_object, original_object, change, rel, save=True):
|
def save_file(self, new_data, new_object, original_object, change, rel, save=True):
|
||||||
upload_field_name = self.get_manipulator_field_names('')[0]
|
upload_field_name = self.get_manipulator_field_names('')[0]
|
||||||
if new_data.get(upload_field_name, False):
|
if new_data.get(upload_field_name, False):
|
||||||
func = getattr(new_object, 'save_%s_file' % self.name)
|
|
||||||
if rel:
|
if rel:
|
||||||
file = new_data[upload_field_name][0]
|
file = new_data[upload_field_name][0]
|
||||||
else:
|
else:
|
||||||
file = new_data[upload_field_name]
|
file = new_data[upload_field_name]
|
||||||
|
|
||||||
|
if not file:
|
||||||
|
return
|
||||||
|
|
||||||
# Backwards-compatible support for files-as-dictionaries.
|
# Backwards-compatible support for files-as-dictionaries.
|
||||||
# We don't need to raise a warning because Model._save_FIELD_file will
|
# We don't need to raise a warning because Model._save_FIELD_file will
|
||||||
# do so for us.
|
# do so for us.
|
||||||
|
@ -849,6 +851,7 @@ class FileField(Field):
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
file_name = file['filename']
|
file_name = file['filename']
|
||||||
|
|
||||||
|
func = getattr(new_object, 'save_%s_file' % self.name)
|
||||||
func(file_name, file, save)
|
func(file_name, file, save)
|
||||||
|
|
||||||
def get_directory_name(self):
|
def get_directory_name(self):
|
||||||
|
|
Loading…
Reference in New Issue