首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >根据一天中的时间拒绝网页(DJANGO)

根据一天中的时间拒绝网页(DJANGO)
EN

Stack Overflow用户
提问于 2012-08-31 16:54:43
回答 1查看 105关注 0票数 1

如何使用django模板根据时间删除页面内容?

我正在创建一个在线外卖网站。送货订单被分成不同的时间。

例如,对于下午7点的投递,我希望页面在当天下午6点之前正常显示。然后在下午6点01分,我希望页面说类似于“此交付时间不可用”。

EN

回答 1

Stack Overflow用户

发布于 2012-08-31 17:14:43

老实说,如果你想防止不想要的行为,就不应该依赖模板逻辑。

您可以创建两个变量,例如

代码语言:javascript
运行
复制
from django.conf import settings 

TIME_OPEN = getattr(settings, 'TIME_OPEN', datetime.now().replace(hour=10, minute=30, second=0, microsecond=0).time())
TIME_CLOSED = getattr(settings, 'TIME_CLOSED', datetime.now().replace(hour=21, minute=30, second=0, microsecond=0).time())

在您的url模式中,您可以添加如下内容:

代码语言:javascript
运行
复制
if TIME_OPEN < datetime.now().time() < TIME_CLOSED:
    urlpatterns += patterns('shop.customers.views',
    (r'^checkout/$', 'checkout'),
)

基于您的新变量,您可以添加一个为UI逻辑的每个模板提供上下文变量的context_processor,例如{'shop_open': True}

请注意,这些示例依赖于服务器时间,因此您必须进行检查,因为它可能与您的本地计算机不同。另一种方法可能是创建一个装饰器,它可以包装在需要特定时间的视图周围。

所以,只是为了确保;不要依赖模板逻辑,保护您的视图

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12211989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档