我想在我的Django應用程序中獲取用戶帳戶的「年齡」。這是我做的:在Django中減去日期時間 - 無輸出
class UserData(models.Model):
user = models.ForeignKey(User,unique=True)
birth = models.IntegerField(default=1900)
gender = models.CharField(max_length=1)
@property
def isNew(self):
if (datetime.datetime.now()-self.user.date_joined) < datetime.timedelta(days=40):
return True;
else:
return False;
在我的模板中有一個不同的視圖取決於此函數的輸出。但基本沒有輸出。
當簡單地「打印」輸出時,根本沒有返回。顯示日期時,返回「datetime」和「date_joined」。返回「datetime.datetime」的返回str(type())時。但是,當返回差異(或差異的類型)時,絕對沒有返回。在我的python控制檯中執行相同的操作時,會返回timedelta - 正是我所期望的。
任何想法在哪裏搜索下一個?我無法弄清楚發生了什麼事情可以完全防止此功能在不崩潰應用程序的情況下提供任何輸出。
你能告訴我們你的模型? – Charlesthk
我現在增加了完整的模型;) –