2016-08-12 45 views
0

我得到這個錯誤無法解析餘數爲: '(datetime.datetime.now()' 從 '(datetime.datetime.now()'Django的,日期時間爲模板無法解析

有問題的代碼

{% if pr.update_news != "" and (datetime.datetime.now() - pr.update_date).days < 10 %} 

好像不明白日期時間。 pr.update_date其日期字段爲DB

回答

2

Django模板語言是有限的,你不能嵌入任何Python像你這樣做。

您可以創建一個包含邏輯的模型方法。例如:

from datetime import datetime 

class PR(models.Model): 
    ... 
    def has_recent_news(self): 
     return self.update_news and (datetime.now() - self.update_date).days < 10 

然後在你的模板,使用方法:

{% if pr.has_recent_news %} 

注意你不要在模板做pr.has_recent_news()。你做pr.has_recent_news,Django自動調用該方法。

+0

謝謝,我在你的文章之前修復了它,但同樣的方式......記得「編寫你的第一個Django應用程序」教程有這樣的東西 – ditsikts