Hi all,
I've come across something which might possibly be a Django bug, but I wanted
to raise it here first in case I'm missing something, or this is expected
behaviour.
There's a fuller explanation and easily runnable example here:
https://github.com/gimbo/django-ugettext_lazy_migrations
In short, given the following model (note the empty help_text string),
from django.db import models
from django.utils.translation import ugettext_lazy as _
class X(models.Model):
y = models.CharField(help_text=_(''), max_length=10)
repeated calls of "manage.py makemigrations" will, after the initial migration,
produce an infinite series of new migrations, each of which contains an
AlterField, but which does nothing. The expected behaviour would be to produce
an initial migration and then no further migrations, of course.
The problems goes away if you do any of the following:
* Remove the help_text parameter
* Use a non-empty help_text
* Don't internationalise the help_text value
* Use ugettext instead of ugettext_lazy (which, I understand, you shouldn't)
I've reproduced it on all released 1.8.x Django versions up to 1.8.2, but it
doesn't exhibit on any 1.7.x versions I've tried.
I haven't tried any development versions.
Can anyone provide any insight? Is this worth raising a bug over?
Thanks!
-Andy
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/8D0F0BD9-998E-43E1-96B1-036960142724%40barefootcode.com.
For more options, visit https://groups.google.com/d/optout.