2013-06-22 3 views
0

다음과 같이 말하면 Model_1은 1 개의 정수를 가지며 Model_2Model_1을 상속 받고 다른 정수를 더합니다.Django 상속 모델 인스턴스 생성 함수

class Model_1Manager (models.Manager): 
    def create (self, i) 
    m = self.model(value1=i) 
    m.save() 

class Model_1 (models.Model): 
    value1 = model.IntegerField() 
    objects = Model_1Manager() 

class Model_2Manager (Model_1Manager): 
    def create (self, i1, i2) 
    m = self.model(value1=i1, value2=i2) 
    m.save() 

class Model_2 (Model_1): 
    value2 = model.IntegerField() 
    objects = Model_2Manager() 

질문 :

  1. 그대로 Model_2Managercreate() 기능이 올바르게 기록인가?
  2. 전화 할 수있는 방법이 있습니까 Model_1Manager 님의 create() 기능은 무엇입니까? 어떻게 작동할까요? 그대로

답변

1

Model_2Managercreate() 기능이 제대로 작성되어 있습니까?

입니다.

Model_1Managercreate() 함수를 호출 할 수있는 방법이 있습니까? 어떻게 작동할까요? 당신이 그것을 호출을 시도해서는 안이 경우 Model_1Manager.create()에 불행하게도

Model_2 초기화하기에 충분하지 않습니다.

+0

흠 ... 나는 또한 매니저들도 상속받을 생각이 없다고 생각합니다. 아마도 내가해야 할 일은 Model_1 추상을 만들고, 매니저를 정의하지 않고, Model_2의 관리자를 정의하는 것입니다. – reedvoid