我使用的模型具有名為 start_time 和 finish_time 的字段,兩者都是 DateTimeField,我試圖通過用 start_time 減去 finish_time 來計算響應時間。在外殼中:>>> obj = Quizgame.objects.get(user=harry)>>> start = obj.start_time>>> end = obj.finish_time>>> result = end - start>>> resultdatetime.timedelta(seconds=31, microseconds=912224)但是在 django Views 中,當我執行此操作時,我會收到錯誤消息,即 -: 'method' 和 'datetime.datetime' 不受支持的操作數類型views.pydef final_part(request): obj = Quizgame.objects.get(user=request.user) start = obj.start_time end = obj.end_time result = end - start return HttpResponse(result)models.pyclass Quizgame(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) total_score = models.DecimalField("Total score", default=0, decimal_places=2, max_digits=6) start_time = models.DateTimeField(auto_now_add=True) finish_time = models.DateTimeField(null=True)我稍后使用 datetime.datetime.now() 設置完成時間
1 回答

長風秋雁
TA貢獻1757條經驗 獲得超7個贊
您使用 obj.end_time 而不是 obj.finish_time
def final_part(request):
obj = Quizgame.objects.get(user=request.user)
start = obj.start_time
end = obj.finish_time
result = end - start
return HttpResponse(result)
添加回答
舉報
0/150
提交
取消