저는 최근 여가 시간에 일부 웹 응용 프로그램을 장고로 실험하기 시작했습니다. 데이터 모델을 설계 할 때 상속을 사용하여 웹 사이트 사용자를 정의하거나 프레임 워크에서 이미 제공 한 User 클래스로 monkey patching이라는 기술을 사용하는 딜레마에 대해 알아 봤습니다.장고 및 원숭이 패치 문제
User.add_to_class('location', models.CharField(max_length=250,blank=True))
을하고 syncdb
명령을 실행 :
python manage.py validate
에있어서, 에러없는 등 내 모델을 정의한 후에)에 의해 필드를 추가하려고. 그러나이 오류가 계속 발생합니다.
OperationalError: no such column: auth_user.location
내가 사이트 또는 manage.py 셸의 관리자보기에 있는지 여부. 누락 된 추가 단계가 있어야하지만 전체 원숭이 패치 기술에 대한 제한된 문서가있는 것 같습니다. 그래서 상속 재산에 의존하기 전에 도움을 요청합니다. 추가 문서에 대한 코드, 팁 또는 지침은 물론 환영합니다.
미리 감사드립니다.
추신. 나는이 기술이 추악하고, 아마 잘못 알고 있다는 것을 알고있다. ;)
이것은 하나의 트릭을 했어! sqlall 명령이 User 클래스와 관련된 SQL을 표시하지는 않지만. 감사! –