2015-04-16 20 views
10

Dostaję następujący błąd podczas migracji:Django błąd: relacja "users_user" nie istnieje

django.db.utils.ProgrammingError: relation "users_user" does not exist

File "/Users/user/Documents/workspace/api/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute 
    return super(CursorDebugWrapper, self).execute(sql, params) 
    File "/Users/user/Documents/workspace/api/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute 
    return self.cursor.execute(sql, params) 
    File "/Users/user/Documents/workspace/api/env/lib/python2.7/site-packages/django/db/utils.py", line 97, in __exit__ 
    six.reraise(dj_exc_type, dj_exc_value, traceback) 
    File "/Users/user/Documents/workspace/api/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 62, in execute 
    return self.cursor.execute(sql) 

To jest mój model:

from django.db import models 
from django.contrib.auth.models import AbstractBaseUser, PermissionsMixin 
from ..managers.user import UserManager 


class User(AbstractBaseUser, PermissionsMixin): 
    # Email identifier, primary key, unique identifier for the user. 
    email = models.EmailField(verbose_name='email address', max_length=254, unique=True, db_index=True) 
    is_admin = models.BooleanField(default=False) 
    is_active = models.BooleanField(default=False) 
    objects = UserManager() 

    USERNAME_FIELD = 'email' 
    REQUIRED_FIELDS = [] 

    class Meta: 
     verbose_name = 'User' 
     app_label = "users" 

    def __unicode__(self): 
     return self.email 

    @property 
    def get_full_name(self): 
     return self.email 

    @property 
    def get_short_name(self): 
     return self.email 

    def has_module_perms(self, app_label): 
     """ 
     Does the user have permissions to view the app `app_label` 
     """ 
     # Simplest possible answer: Yes, always 
     return True 

    @property 
    def is_staff(self): 
     # Simplest possible answer: All admins are staff 
     return self.is_admin 

Ustawienia:

AUTH_USER_MODEL = 'users.User' 

Wszystko, co przegapiłem?

+1

Zrobiłeś './manage.py makemigrations' i' ./manage.py migrate'? – tgdn

+1

@tgdn Tak, więc zrobiłem '' makemigrations'', która działa bez błędów, a następnie wykonując '' migrate'' otrzymuję powyższy błąd. – Prometheus

+0

Czy próbujesz mieć 'CUSTOM_USER_MODEL'? – tgdn

Odpowiedz

16

W aplikacji użytkownika powinieneś mieć folder migrations. Powinien zawierać tylko 0001_initial.py i __init__.py. Czy to jest poprawne?

Spróbuj uruchomić ./manage.py sqlmigrate user 0001_initial i zobaczyć, co robi, bo to gdzie błąd pochodzi z

+3

To był mój problem - nigdy nie uruchomiłem faktycznej początkowej migracji użytkownika. Prawdopodobnie nie uruchomiłeś 'python manage.py makemigrations appname'yet - po wykonaniu tej czynności i" migracji "po wszystkim wszystko powinno być w porządku. – sofly

Powiązane problemy