将变量传递给模板的上下文处理器

2024-05-20 00:00:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试编写一个上下文处理器core.context_processors.year.year,它将向模板传递一个可变年份,其值将是当前年份的数字:{{{year}版权所有

from datetime import datetime, date

def year(request):
    return {
       request, datetime.now().date()
    }

Tags: fromcoreimport模板datetimedate版权所有request
3条回答

我知道怎么做了,一开始我做错了。感谢所有回应的人

from datetime import datetime


def year(request):
    dt = datetime.now().year
    return {
       'year': dt
    }

您需要返回字典,而不是集合。该字典应包含变量的名称作为键,以及要与之关联的值作为值,因此这里的内容如下所示:

from django.utils.timezone import now

def year(request):
    return {
       'year': now().year
    }

您可以使用内置的“now”templatetaghttps://docs.djangoproject.com/en/3.2/ref/templates/builtins/#now

© {% now "Y" %} Copyright

相关问题 更多 >