2016-10-24 7 views
4

명령을 "이전 manage.py를 파이썬"를 실행하면, 그래서 사용자 정의 모델 클래스 생성 (라는 응용 프로그램에서 계정 이름을 계정) Django의 초록 사용자 클래스를 확장합니다.ValueError를 내가 장고의 <strong>사용자</strong> 모델에 더 많은 필드를 추가하는 데 필요한

는 그 후, 나는 AUTH_USER_MODEL 속성을 정의 내 settings.py 파일을 업데이트 :

AUTH_USER_MODEL = 'accounts.Accounts' 

나는 다음 python manage.py makemigrations 명령을 사용하여 사용자 정의 모델에 대한 마이그레이션 파일을 만들었습니다.

그 후, 나는 python manage.py migrate 명령을 실행하고이 오류 메시지를 받았습니다 :

ValueError: The field admin.LogEntry.user was declared with a lazy reference to 'accounts.accounts', but app 'accounts' isn't installed. 

어떤 오류의 원인이 있고 난 그것을 어떻게 해결할 수 있습니까?

UPDATE :

ValueError: The field admin.LogEntry.user was declared with a lazy reference to 'accounts.accounts', but app 'accounts' doesn't provide model 'accounts'. 
+0

'INSTALLED_APPS'에'accounts' 패키지가 있습니까? – koniiiik

+0

@koniiiik이 내가 INSTALLED_APPS' '에있는 것입니다 : INSTALLED_APPS = [ 'accounts.apps.AccountsConfig ', 'inyavic.apps.InyavicConfig ', 'django.contrib.admin ', 'django.contrib. 인증 ', 'django.contrib.contenttypes ', 'django.contrib.sessions ', 'django.contrib.messages ', 'django.contrib.staticfiles ', ]이 경우 –

+0

, 난 두려워 우리는 더 많은 것을 도울 수있는 완전한 추적을보아야 할 것입니다. 그냥 당신의 질문에 추가하십시오. (읽기 쉽게하기 위해'INSTALLED_APPS'를 열거 할 수도 있습니다). – koniiiik

답변

1

당신은 당신의 INSTALLED_APPS에 accounts를 추가하지 않은 : 내가 python manage.py makemigrations 명령을 실행하면 지금, 나는이 오류 메시지가 표시됩니다. 댓글을 통해 앱 목록에 accounts.apps.AccountsConfig이 표시됩니다. 대신에, 단지

2

당신은 단지 마이그레이션 폴더에 이전 0001_initial.py을 삭제하고 makemigration을하고 시도하고 그것은 당신이 기본 사용자 모델을 이미 인스턴스가해서입니다

+0

라이브 프로젝트에는 좋지 않다고 생각합니다. –

0

다시 마이그레이션하여 INSTALLED_APPS에 accounts를 추가 나는 생각한다. 새 프로젝트를 시작하고 모델을 다시 마이그레이션하면 제대로 작동합니다.