에 대한 제 3 자 응용 프로그램 하위 클래스에 추가하고자하는 타사 응용 프로그램이 있다고 말하면 ThirdPartyClass
이라고 할 수 있습니다. genereal 사용자를 생성하기 위해이 클래스를 서브 클래스 화하고,보다 구체적인 사용자를 위해 일반 사용자를 서브 클래스화할 수있는 유연성을 갖기를 원합니다. 내가 AbstractUser
을 하위 클래스로 원하는대로 분명히Django 서브 클래스 사용자 모델
class GeneralUser(ThirdPartyClass):
user = models.OneToOneField(
settings.AUTH_USER_MODEL)
# general fields would go here
class SpecificUser(GeneralUser):
# specific fields would go here
는,이 작동하지 않습니다
models.py : 그것은 다음과 같이 보일 것인가? 어쩌면 이것이 올바른 접근 방식이 아닐 수도 있습니다. 이것에 대한 해결책이 있습니까?
사이드 노트 : 제가 생각한 써드 파티 어플리케이션은 here입니다. 어쨌든,이 대답은 제 3 자 앱에 대한 세부 사항없이 해결 될 수 있지만 다른 선택 사항이 없다면 무엇이든지 완료되면 받아 들여질 것입니다! 감사합니다.
나는 당신의 질문을 이해하지 않습니다. 우선, OOP에서 _inheritance_이 작동한다고 믿는 것처럼, 이것이 작동하지 않는다는 것이 "명백한"것은 아닙니다. 왜 파생 클래스에서'user' 필드를 재정의 했습니까? – kirelagin
파생 된 클래스에서'user' 필드를 재정의하고 편집하고 수정하는 것을 의미하지 않았습니다. 이 상속 모델은 작동하지만이 예제에서는'AbstractUser'가 서브 클래 싱되지 않았습니다. 그건 내가 장고'사용자'로 등록하고자하기 때문에 문제입니다. – Joker
'ThirdPartyClass'가'AbstractUser'의 서브 클래스 인 경우 클래스는 또한 클래스를 암시 적으로 서브 클래스 화합니다. 'ThirdPartyClass'가'AbstractUser'를 서브 클래스 화하지 않으면 클래스에서 그것을 명시 적으로 서브 클래스 화하십시오. – kirelagin