1 | Index: django/core/meta/__init__.py
|
---|
2 | ===================================================================
|
---|
3 | --- django/core/meta/__init__.py (revision 961)
|
---|
4 | +++ django/core/meta/__init__.py (working copy)
|
---|
5 | @@ -1018,7 +1018,7 @@
|
---|
6 | return os.path.getsize(method_get_file_filename(field, self))
|
---|
7 |
|
---|
8 | def method_save_file(field, self, filename, raw_contents):
|
---|
9 | - directory = field.get_directory_name()
|
---|
10 | + directory = os.path.join(field.get_directory_name(), os.path.dirname(filename))
|
---|
11 | try: # Create the date-based directory if it doesn't exist.
|
---|
12 | os.makedirs(os.path.join(settings.MEDIA_ROOT, directory))
|
---|
13 | except OSError: # Directory probably already exists.
|
---|
14 | Index: django/core/meta/fields.py
|
---|
15 | ===================================================================
|
---|
16 | --- django/core/meta/fields.py (revision 961)
|
---|
17 | +++ django/core/meta/fields.py (working copy)
|
---|
18 | @@ -422,9 +422,9 @@
|
---|
19 | def get_directory_name(self):
|
---|
20 | return os.path.normpath(datetime.datetime.now().strftime(self.upload_to))
|
---|
21 |
|
---|
22 | - def get_filename(self, filename):
|
---|
23 | - from django.utils.text import get_valid_filename
|
---|
24 | - f = os.path.join(self.get_directory_name(), get_valid_filename(os.path.basename(filename)))
|
---|
25 | + def get_filename(self, filename):
|
---|
26 | + from django.utils.text import get_valid_filename
|
---|
27 | + f = os.path.join(self.get_directory_name(), os.path.dirname(filename), get_valid_filename(os.path.basename(filename)))
|
---|
28 | return os.path.normpath(f)
|
---|
29 |
|
---|
30 | class FilePathField(Field):
|
---|