码迷,mamicode.com
首页 > 其他好文 > 详细

Django 上下文处理器

时间:2019-02-21 21:36:37      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:day   django   setting   super   return   当前时间   %s   context   mes   

上下文处理器可以在 settings 中的  TEMPLATES 模板配置内看都有什么上下文处理器

也可以自己写好方法在模板配置内添加

定义的方法

#导入时间模块
import datetime

#定义一个上下文处理器方法
def get_daytime(reqeust):
    ip = reqeust.META[REMOTE_ADDR]
    #获取当前时间

    nowtime = datetime.datetime.now().strftime(%Y-%m-%d %H:%M:%S)
    my_hour = int(datetime.datetime.now().strftime(%H))
    if my_hour > 1 and my_hour <= 7:
        now_str = 早上好
    elif my_hour > 7 and my_hour <= 11:
        now_str = 上午好
    elif my_hour > 11 and my_hour <= 18:
        now_str = 下午好
    else:
        now_str = 晚上好
    #给模板传递参数
    return locals()

将写好方法在模板配置内添加

#模板配置
TEMPLATES = [
    {
        BACKEND: django.template.backends.django.DjangoTemplates,
        DIRS: [os.path.join(BASE_DIR,templates)],
        APP_DIRS: True,
        OPTIONS: {
            context_processors: [
                django.template.context_processors.debug,
                django.template.context_processors.request,
                django.contrib.auth.context_processors.auth,
                django.contrib.messages.context_processors.messages,
                #定义自定义上下文处理器的位置
                supermarket.context_processor.get_daytime
            ],
        },
    },
]

 

Django 上下文处理器

标签:day   django   setting   super   return   当前时间   %s   context   mes   

原文地址:https://www.cnblogs.com/Niuxingyu/p/10415270.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!