如何使用查询查找可用日期

马克·伯格

您能帮我建立一个查询,以在Laravel Eloquent中找到免费日期吗?

所以我有两个模型,Node和Booking。模型通过HasMany关系关联

public function dates()
{
    return $this->hasMany(Booking::class, 'object_id', 'nid');
}

预订模型具有以下结构:

| bid | object_id  | checkin    | checkout   |
|  1  | 32         | 2017-04-25 | 2017-04-28 |
|  2  | 32         | 2017-05-01 | 2017-05-09 |
|  3  | 44         | 2017-04-21 | 2017-04-24 |
|  4  | 51         | 2017-05-01 | 2017-05-08 |

我的目的是查找给定日期之间的可用节点。

因此,如果我想在两个日期之间搜索一个日期(例如created_at),这很简单:

whereBetween(‘created_at’, [$date1, $date2])

但是,如何在签入和签出两个日期之间创建搜索查询?

卡斯珀·斯普鲁特

你的意思是这样的吗?

$query->where('checkin','<=', $date)
      ->where('checkout','>=', $date);

您也可以将其添加到范围:Laravel query-scopes

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章