Commit 6f229048 authored by Attila Tovt's avatar Attila Tovt Committed by Tim Graham
Browse files

Fixed #25547 -- Made Model.refresh_from_db() update FileField's instance.

parent f5af68ba
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -202,6 +202,10 @@ class FileDescriptor(object):
            file.field = self.field
            file.storage = self.field.storage

        # Make sure that the instance is correct.
        elif isinstance(file, FieldFile) and instance is not file.instance:
            file.instance = instance

        # That was fun, wasn't it?
        return instance.__dict__[self.field.name]

+5 −0
Original line number Diff line number Diff line
@@ -792,6 +792,11 @@ class FileFieldTests(unittest.TestCase):
        except OSError:
            self.fail("Deleting an unset FileField should not raise OSError.")

    def test_refresh_from_db(self):
        d = Document.objects.create(myfile='something.txt')
        d.refresh_from_db()
        self.assertIs(d.myfile.instance, d)


class BinaryFieldTests(test.TestCase):
    binary_data = b'\x00\x46\xFE'