我不确定这是最好的标题,但我很难简单地表达它。基本上,我正在创建一个代表企业的模型。这包括地址、营业时间等。正是营业时间让我困惑。我有我的地址
class Address(models.Model):
--snip--
Business = models.ForeignKey(BusinessInfo)
Run Code Online (Sandbox Code Playgroud)
因此,每个企业都有一个或多个位置地址。我希望对 Hours 做类似的事情
class HoursOnDay(models.Model):
open = isOpen = models.BooleanField()
open = models.TimeField(null=True)
closed = models.TimeField(null=True)
Run Code Online (Sandbox Code Playgroud)
我想要强制执行的是,每个企业都必须有一组 7 HoursOnDay - 一个代表一周中的每一天。我似乎无法偶然发现一种明显而优雅的方法来做到这一点。有没有一个好的方法可以在 django 中对此进行建模?
小智 4
使用多对多字段:
class HoursOnDay(models.Model):
is_open = models.BooleanField()
open = models.TimeField(null=True)
closed = models.TimeField(null=True)
class Day(models.Model):
hours = models.ManyToManyField(HoursOnDay)
class Business(models.Model):
days = models.ManyToManyField(Day)
Run Code Online (Sandbox Code Playgroud)
如果您想要限制 7 小时和 7 天,您可以选中 限制要创建的模型实例数量
| 归档时间: |
|
| 查看次数: |
10733 次 |
| 最近记录: |