#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 [email protected].
To post to this group, send email to [email protected].
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