Python 打印页面生成时间

Python 打印页面生成时间,python,django,Python,Django,在django中,如何打印将页面呈现到站点底部所需的时间?我不确定django的应用程序流,所以我不知道这将如何工作。在视图处理程序的开头,将当前日期/时间保存在变量中,比如time\u start,并将其传递给呈现页面的模板上下文 然后定义一个自定义模板筛选器,该筛选器将基于datetime.now()和作为参数传入的原始datetime创建timedelta,如下所示: from datetime import datetime from django import template re

在django中,如何打印将页面呈现到站点底部所需的时间?我不确定django的应用程序流,所以我不知道这将如何工作。

在视图处理程序的开头,将当前日期/时间保存在变量中,比如
time\u start
,并将其传递给呈现页面的模板上下文

然后定义一个自定义模板筛选器,该筛选器将基于
datetime.now()和作为参数传入的原始datetime创建
timedelta
,如下所示:

from datetime import datetime
from django import template

register = template.Library()

@register.filter
def get_elapsed(time_start):
    return str(datetime.now() - time_start)
然后在模板中,只需显示:

...
{{ time_start|get_elapsed }}
...

在视图处理程序的开头,将当前日期/时间保存在变量中,例如
time\u start
,并将其传递给呈现页面的模板上下文

然后定义一个自定义模板筛选器,该筛选器将基于
datetime.now()和作为参数传入的原始datetime创建
timedelta
,如下所示:

from datetime import datetime
from django import template

register = template.Library()

@register.filter
def get_elapsed(time_start):
    return str(datetime.now() - time_start)
然后在模板中,只需显示:

...
{{ time_start|get_elapsed }}
...

您可能会感兴趣,它包括一个请求计时器和许多其他有用的信息,用于调试类似的东西。

您可能会感兴趣,它包括一个请求计时器和许多其他有用的信息,用于调试类似的东西。

是否有一种全局方法?我是否不必将其添加到每个视图函数中?模板将转到您的基本模板,您将为所有页面继承该模板。至于
time\u start
最简单的方法是将所有视图包装在一个装饰器中,该装饰器在为该视图提供的默认上下文中设置
time\u start
。然后,您只需在每个视图前面应用它(因为您需要视图开始执行和模板几乎完成之间的时间差)。您还可以在每个视图上使用,而不是使用装饰器。是否有一种全局执行的方法?我是否不必将其添加到每个视图函数中?模板将转到您的基本模板,您将为所有页面继承该模板。至于
time\u start
最简单的方法是将所有视图包装在一个装饰器中,该装饰器在为该视图提供的默认上下文中设置
time\u start
。然后,您只需在每个视图前面应用它(因为您需要视图开始执行和模板几乎完成之间的时间差)。您还可以在每个视图上使用,而不是使用装饰器。哦。真正地为什么您的用户想知道生成页面需要多长时间。。。那么,我想你需要使用上下文管理器。我一直认为,显示页面在0.1****秒内呈现的网站会让页面看起来更酷,所以我想我只是想要它的外观波赫。真正地为什么您的用户想知道生成页面需要多长时间。。。那么,我想你需要使用上下文管理器。我一直认为,显示页面在0.1****秒内呈现的网站会让页面看起来更酷,所以我想我只是想要它的外观P