Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

[1.0.X] Fixed #10347 -- Fixed incorrect AttributeError raised when at…

…tempting to access a FileField without an instance. Thanks for the report and patch dc.

[9902] from trunk.  Also updated svnmerge metadata; all trunk changesets have either been merged or blocked.


git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.0.X@9903 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit c9a63889f6d51159e0c029d6210f50b44e247659 1 parent 3550aa2
@kmtracey kmtracey authored
View
2  django/db/models/fields/files.py
@@ -118,7 +118,7 @@ def __init__(self, field):
def __get__(self, instance=None, owner=None):
if instance is None:
- raise AttributeError, "%s can only be accessed from %s instances." % (self.field.name(self.owner.__name__))
+ raise AttributeError("The '%s' attribute can only be accessed from %s instances." % (self.field.name, owner.__name__))
file = instance.__dict__[self.field.name]
if not isinstance(file, FieldFile):
# Create a new instance of FieldFile, based on a given file name
View
6 tests/modeltests/files/models.py
@@ -34,6 +34,12 @@ def random_upload_to(self, filename):
default = models.FileField(storage=temp_storage, upload_to='tests', default='tests/default.txt')
__test__ = {'API_TESTS':"""
+# Attempting to access a FileField from the class raises a descriptive error
+>>> Storage.normal
+Traceback (most recent call last):
+...
+AttributeError: The 'normal' attribute can only be accessed from Storage instances.
+
# An object without a file has limited functionality.
>>> obj1 = Storage()
Please sign in to comment.
Something went wrong with that request. Please try again.