创建模板对象以根据时间显示

时间:2009-08-19 12:18:54

标签: django datetime django-models django-templates

我需要创建一个跨站点模板对象,该对象将检查当前时间并返回一个字符串,如果它在模型或其他时间范围内指定的时间范围内或在所有其他情况下为空白。

看似简单,但我想知道这里最好的方法是什么?此外,还有一些其他考虑因素:

  • 字符串应该是可编辑的
  • 显示时间不应该在开始时间之前有结束时间
  • 我们需要允许存储多个字符串,但只有一个(或没有)被选为“live”

作为一个起点,我将使用模型来定义字符串以及开始和结束时间,如下所示:

from datetime import datetime
class dynamicString(models.Model):
start = models.TimeField()
end = models.TimeField()
name = models.CharField(max_length=50, help_text = 'Just for reference, won\'t be displayed on site.')
number = models.CharField(max_length=18, help_text = 'This is the string to be displayed within the above timeframe.')
active = models.BooleanField(help_text = 'Uncheck this to stop string from displaying entierly.')
def __unicode__(self):
    return self.name

但是接下来要合并逻辑规则呢?

1 个答案:

答案 0 :(得分:0)

使用更简单的规则系统重新设计:检查一个数字时间范围,如果在范围内,如果不是空白,则返回数字,否则返回备用数字(可能为空白)。

运行作为上下文过程传递的处理。