Warum erhalte ich eine "auth_user nicht vorhanden ist"Fehler beim ausführen der "Migration" auf eine neu erstellte django Projekt mit "Registrierung redux" - app installiert?

Gegeben eine neu erstellte django Projekt mit den folgenden apps installiert:

INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'registration',
)

Wenn ich ./manage.py migrieren Sie zum ersten mal bekomme ich die folgende Fehlermeldung:

Operations to perform:
  Synchronize unmigrated apps: staticfiles, messages, registration
  Apply all migrations: sessions, admin, auth, contenttypes
Synchronizing apps without migrations:
  Creating tables...
    Creating table registration_registrationprofile
    Running deferred SQL...
Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/core/management/__init__.py", line 330, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/core/management/base.py", line 390, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/core/management/base.py", line 441, in execute
    output = self.handle(*args, **options)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 179, in handle
    created_models = self.sync_apps(connection, executor.loader.unmigrated_apps)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 317, in sync_apps
    cursor.execute(statement)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute
    return super(CursorDebugWrapper, self).execute(sql, params)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/db/utils.py", line 97, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/Users/tcosta/Virtualenvs/django_project/lib/python2.7/site-packages/django/db/backends/utils.py", line 62, in execute
    return self.cursor.execute(sql)
django.db.utils.ProgrammingError: relation "auth_user" does not exist```

Scheint es Django ist, die versuchen, um die Registrierung der Tabellen vor der user-Tabelle.

Dieser Fehler nicht passiert, wenn ich einen Kommentar der Registrierung der app und ausführen, migrieren und dann kommentieren Sie die Registrierung app, und führen Sie migrieren wieder. Aber das ist nicht der richtige Weg, es zu tun, richtig?

  • Django-Migrationen sollten in der Lage sein, um anzugeben, Abhängigkeiten zu bestimmen, um so die registration migration könnte wahrscheinlich verwenden Sie ein dependency zu auth.User. Da es eine Bibliothek, ich bin mir nicht wirklich sicher, was die Lösung ist hier. Vielleicht ist die Reihenfolge der INSTALLED_APPS?
  • Ich habe bereits verändert die Reihenfolge der INSTALLIERTEN APPS, aber es hat nicht funktioniert! 🙁 Danke übrigens.
  • Zu "lösen" hatte ich, um alle Migrationen für alle apps und dann startete ich eine Wanderung, und es funktionierte. stackoverflow.com/questions/29689365/... (Pedro asnwer)
  • Ich habe dasselbe Problem. python manage.py migrate werden alle apps in der richtigen Reihenfolge mit auth zuerst auf mysql5.6 aber wenn ich mich bewege, zu mysql5.7, sehe ich dieses Problem.
InformationsquelleAutor goathi | 2015-05-01
Schreibe einen Kommentar