django.utils timezone搭配timedelta的使用達到時間的加減以及運算
如果我們想要實作時間的加減可以透過timedelta
今天我想要把一組現在的時間+上一分鐘來當作我的驗證失效時間
我們可以這樣做
首先
在我們的settings.py中宣告timezone啟用的設定
setting.py
USE_TZ = True
接著在程式碼當中提出實體,並透過timedelta做運算
due_time = timezone.now() + timezone.timedelta(seconds=60)
這樣due_time就會是現在時間加一分鐘
若套用在models上面則是
due_date = models.DateTimeField('due date', default=timezone.now()+ timezone.timedelta(seconds=60), editable=False)
當最後需要運算的時候判斷是否超過一分鐘
當timezone.now()-due_date後取得的事timedelta的實體
if((timezone.now()-due_date).seconds > 60):
print("verify fail!!!")
else:
do something
大功告成
特別要注意timedelta能做加減的型態
要實作分鐘的話就用秒數*60去實作囉
因為沒提供minutes或是hour
可以去官方document看看
Attribute | Value |
---|---|
days | Between -999999999 and 999999999 inclusive |
seconds | Between 0 and 86399 inclusive |
microseconds | Between 0 and 999999 inclusive |
訂閱:
張貼留言
(
Atom
)
技術提供:Blogger.
沒有留言 :
張貼留言