Kaydet (Commit) 27ee608b authored tarafından Colin Wood's avatar Colin Wood Kaydeden (comit) Tim Graham

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

Forwardport of f5740af8 from stable/1.7.x
üst 7c3d6149
......@@ -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>
......
......@@ -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):
......
......@@ -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.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment