해결된 질문
작성
·
854
1
안녕하세요 강사님
커스텀 유저 지정 및 회원가입 구현의
4분 40초 쯤에 AUTH_USER_MODL 추가 부분이 나오는데요.
이 부분 관련하여 데이터베이스 기존에 있는 것을 삭제하고
AUTH_USER_MODEL = 'accounts.User'
라고 설정한 뒤에 python manage.py makemigrations accounts라고 하면
File "/Users/daniel_choi/opt/anaconda3/envs/instagram_second/lib/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'accounts.urls'
이렇게 나오더라구요.
위의 방법에 있어서 읽어올 수 없길래
AUTH_USER_MODEL = 'accounts.models.User'
라고 해주었더니 이번에는
ValueError: Invalid model reference
'accounts.models.User'. String model
references must be of the
form 'app_label.ModelName'.
라고 나옵니다
어떻게 해결하면 될까요? ㅠㅠ
답변 1
1
안녕하세요.
아래 오류 메세지를 읽어보시면, 어떤 의미로 생각되시나요?
ModuleNotFoundError: No module named 'accounts.urls'
에러 메세지를 차근차근 읽어보시고, 그에 따른 본인의 해석도 같이 질문해주시면 더욱 좋습니다.
위는 장고의 오류라기보다, 파이썬 차원의 오류입니다.
그리고, AUTH_USER_MODEL 때문에 위 오류가 발생하는 것이 아닙니다. AUTH_USER_MODEL 값은 models.FoeignKey에 직접적으로 사용이 되구요. models.ForeignKey의 인자로 문자열로 관계가 되는 모델을 지정할 때에는 필히 "앱이름.모델명" 의 형태를 취합니다. "앱이름.models.모델명" 포맷은 models.ForeignKey에서 허용하지 않습니다. 그러니 아래의 오류를 장고가 낸 것입니다.
ValueError: Invalid model reference "accounts.models.User".
너무 조급해하지 마세요.
화이팅입니다. :-)
아.. 그렇군요.. ㅠㅠㅠ 방법을 찾았고 해결했습니다!
감사합니다!!!