#22030: AttributeError: 'CharField' object has no attribute 'swappable_setting'
-------------------------------------------+---------------------
               Reporter:  bmispelon        |          Owner:
                   Type:  Bug              |         Status:  new
              Component:  Migrations       |        Version:  1.6
               Severity:  Release blocker  |       Keywords:
           Triage Stage:  Unreviewed       |      Has patch:  0
    Needs documentation:  0                |    Needs tests:  0
Patch needs improvement:  0                |  Easy pickings:  0
                  UI/UX:  0                |
-------------------------------------------+---------------------
 Here's how to reproduce:

 Create an app with a simple `models.py` (and put it in
 `settings.INSTALLED_APPS`):
 {{{#!python
 from django.db import models

 class Foo(models.Model):
     pass
 }}}

 Run `makemigrations` and then `migrate`.

 Then change the `Foo` model to be:
 {{{#!python
 class Foo(models.Model):
     foo = models.CharField(max_length=10, default='')
 }}}

 After that, running `manage.py makemigrations` breaks with the following
 traceback:
 {{{
 Traceback (most recent call last):
   File "manage.py", line 10, in <module>
     execute_from_command_line(sys.argv)
   File "./django/core/management/__init__.py", line 427, in
 execute_from_command_line
     utility.execute()
   File "./django/core/management/__init__.py", line 419, in execute
     self.fetch_command(subcommand).run_from_argv(self.argv)
   File "./django/core/management/base.py", line 287, in run_from_argv
     self.execute(*args, **options.__dict__)
   File "./django/core/management/base.py", line 336, in execute
     output = self.handle(*args, **options)
   File "./django/core/management/commands/makemigrations.py", line 80, in
 handle
     changes = autodetector.changes(graph=loader.graph,
 trim_to_apps=app_labels or None)
   File "./django/db/migrations/autodetector.py", line 33, in changes
     changes = self._detect_changes()
   File "./django/db/migrations/autodetector.py", line 236, in
 _detect_changes
     swappable_setting = new_apps.get_model(app_label,
 model_name)._meta.get_field_by_name(field_name)[0].swappable_setting
 AttributeError: 'CharField' object has no attribute 'swappable_setting'
 }}}

 Breakage was introduced in commit
 11c021336c8cb1c92be998f1a44c89a746275107.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/22030>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/052.f44a6f424c04cf1982da71ed62d1f29e%40djangoproject.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to