【问题标题】:Business Opening hours in DjangoDjango 的营业时间
【发布时间】:2015-04-11 13:45:48
【问题描述】:

我想为诊所添加营业时间,我已经查看了 Any existing solution to implement "opening hours" in Django,但它不适合我。因为这个假设您在所有工作日都有相同的时间集和特殊日子的相同时间集。鉴于,我希望个别日子有不同的营业时间。此外,我希望在某一天有超过 1 个条目。例如,周日的诊所从上午 8:30 到下午 12:00 营业,并从下午 4:30 到晚上 10 点再次开放。

我希望能够从管理面板添加这个,类似于 Yelp

【问题讨论】:

标签: python django


【解决方案1】:

恕我直言,链接中的解决方案几乎完全符合您的要求。稍微定制一下:

WEEKDAYS = [
  (1, _("Monday")),
  (2, _("Tuesday")),
  (3, _("Wednesday")),
  (4, _("Thursday")),
  (5, _("Friday")),
  (6, _("Saturday")),
  (7, _("Sunday")),
]

class OpeningHours(models.Model):

    weekday = models.IntegerField(choices=WEEKDAYS)
    from_hour = models.TimeField()
    to_hour = models.TimeField()

    class Meta:
        ordering = ('weekday', 'from_hour')
        unique_together = ('weekday', 'from_hour', 'to_hour')

    def __unicode__(self):
        return u'%s: %s - %s' % (self.get_weekday_display(),
                                 self.from_hour, self.to_hour)

【讨论】:

  • 我仍然无法在一天内添加超过 1 个条目。
  • 为什么不呢? weekday 字段不是唯一的,因此您可以在一天内添加任意数量的 OpeninHours 记录。
  • 在 Forms.py 中如何称呼它?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-01-21
  • 2011-02-12
  • 1970-01-01
  • 2014-05-31
  • 1970-01-01
  • 2021-07-15
  • 1970-01-01
相关资源
最近更新 更多