Commit 27ee608b authored by Colin Wood's avatar Colin Wood Committed by Tim Graham
Browse files

Fixed #22940 -- Added missing string iterpolation parameters in migrations.writer error.

Forwardport of f5740af8 from stable/1.7.x
parent 7c3d6149
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -684,6 +684,7 @@ answer newbie questions, and generally made Django that much better:
    Jakub Wiśniowski <restless.being@gmail.com>
    Maciej Wiśniowski <pigletto@gmail.com>
    wojtek
    Colin Wood <cwood06@gmail.com>
    Marcin Wróbel
    Jason Yan <tailofthesun@gmail.com>
    Lars Yencken <lars.yencken@gmail.com>
+1 −1
Original line number Diff line number Diff line
@@ -319,7 +319,7 @@ class MigrationWriter(object):
                    "and used in the same class body). Please move the "
                    "function into the main module body to use migrations.\n"
                    "For more information, see https://docs.djangoproject.com/en/1.7/topics/migrations/#serializing-values"
                )
                    % (value.__name__, module_name))
            return "%s.%s" % (module_name, value.__name__), set(["import %s" % module_name])
        # Classes
        elif isinstance(value, type):
+13 −0
Original line number Diff line number Diff line
@@ -167,6 +167,19 @@ class WriterTests(TestCase):
        with self.assertRaises(ValueError):
            self.serialize_round_trip(TestModel2.thing)

    def test_serialize_local_function_reference_message(self):
        """
        Make sure user is seeing which module/function is the issue
        """
        class TestModel2(object):
            def upload_to(self):
                return "somewhere dynamic"
            thing = models.FileField(upload_to=upload_to)

        with six.assertRaisesRegex(self, ValueError,
                '^Could not find function upload_to in migrations.test_writer'):
            self.serialize_round_trip(TestModel2.thing)

    def test_simple_migration(self):
        """
        Tests serializing a simple migration.