我正在尝试获取用户从现在到下周之间的预订。如果存在预订,则用户将从可能的选择中删除。
我在User模型中创建了这个reservation()
函数:
public function reservation(): BelongsTo
{
return $this->belongsTo(Reservation::class, ['user_1_id', 'user_2_id', 'user_3_id', 'user_4_id'], 'id');
}
最后,我返回视图时,尝试获得如下预订:
$user = User::whereHas('reservation', function ($query) {
$query->whereBetween('date', [Carbon::now(), Carbon::now()->addWeek()]);
})->first();
然后,当保留存在时,我想从用户集合中删除该用户,并在视图中返回可用用户的新集合。现在的问题是,我首先得到一个错误:str_contains(): Argument #1 ($haystack) must be of type string, array given
第二个我如何能够从用户集合中删除找到的用户?
1条答案
按热度按时间egmofgnx1#
这个问题的答案是:
我必须有一个中间表我称之为:“reservation_user”,则
reservation()
函数需要替换为:然后获取从现在到下周没有预订的用户:
此函数将返回从现在到下周没有预订的所有用户。