2016-02-04 2 views
0

Я пытаюсь получить разницу между двумя датами в моей модели в моем представлении для работы.Как мне вызвать метод модели в представлении?

Модель:

class Proposal(models.Model): 
    prop_num = models.IntegerField() 
    start = models.DateField() 
    end = models.DateField() 
     ... 
    def date_dif(self): 
     return self.start-self.end 

Как получить date_dif значения в моей точки зрения?

Просмотров:

def test(request): 
    props = Proposal.objects.all() 
    dates = ClosedDate.objects.all() 
    for i in props: 
     print(i.date_dif) 

    context={ 
     "props":props, 
     "dates":dates 
    } 

    return render(request,"test.html",context) 
+2

Должно ли не быть: 'print (i.date_dif())'? – bernie

+0

Ahh да .. не могу поверить, что я забыл, что это необходимо. –

+0

Не беспокойтесь, приятель. Случается со всеми нами. – bernie

ответ

1

из here:

Django модели, как и все в питоне в объекте, так что вы можете вызвать специальный метод после экземпляра его, но не забывайте, что i.foo лечится как атрибут и i.foo() - это метод.