我正在开发一个示例应用程序来预订其他用户的项目。我遇到了一个障碍,因为我无法弄清楚当物品可以租用时如何建模。
要求:
有什么想法吗?
答案 0 :(得分:1)
在项目模型上,添加两个日期时间字段,例如" bookedStart"和"预订结束"。并且有一个函数isBooked()来检查给定的日期时间或当前的日期时间是否在该时间范围内,如果是,则返回True,否则返回False。
如果用户应该能够在项目可用时添加多个时间帧(一次性),则可以为其创建单独的模型,例如BookedItem,并在其中添加开始和结束日期时间字段,以及用户和项目的外国字段。再一次,isAvailable()或isBooked()函数。
答案 1 :(得分:1)
如果我收到此要求,我将设计一个表格如下:
class RentedItemsList(models.Model):
item = models.CharField(...)
rented = models.BooleanField(...)
rent_at = models.DateTimeField(...)
return_at = models.DateTimeField(...)
说明
item
存储项目名称。rented
代表状态。 1
可用。 0
不可用。 rent_at
表示用户想要租用某个项目的时间。它将更新此列。return_at
表示用户想要每天或每小时租用商品。它将设定截止日期。我认为它可以帮助您弄清楚当物品可以租用时的模型。你可以参考一下。
完全取决于您如何设计API来访问模型。