2013-11-14 2 views
-3

나는이 메소드 (records_quantity)를 호출 할 때뿐만 아니라 이해하지 못한다. 프롬프트하라. 은 지금은 에러 (AttributeError를 : '제목'개체가 어떤 속성 'record_set을'없음)받을파이썬 상속. 카운트 레코드

class Subject(models.Model): 
    name = models.CharField(max_length=100) 

    def records_quantity(self): 
     return self.record_set.count() 

z = Subject() 
z.records_quantity() 

class Record(models.Model): 
    subject = models.ForeignKey(Subject) 
    record_short_description = models.CharField(max_length=100) 
+0

무엇이 질문입니까? – kindall

+0

클래스의 객체 수량을 알아 내고 변수에 저장하는 것이 필요합니다. records_quantity – user2992865

+0

적절한 영어를 작성하기 위해 노력하십시오. –

답변

2

대신 속성으로 선언, 모델 방법을 만듭니다. 당신이 ()으로 records_quantity에 액세스 할 수 싶지 않는 경우 Subject

@property 장식을 사용

class Subject(models.Model): 
    name = models.CharField(max_length=100) 

    def records_quantity(self): 
     return self.record_set.count() 

이제 subject 모델의 인스턴스

subject.records_quantity() 

처럼 뭔가를 할 수

class Subject(models.Model): 
    name = models.CharField(max_length=100) 

    @property 
    def records_quantity(self): 
     return self.record_set.count() 

그럼

subject.records_quantity