Laravelアプリケーションのマルチテナントアップデートを行っていますが、特定のチームIDを別のメソッドの中のモデルのメソッドに渡そうとするときに問題が発生します。同じモデル内からlaravelメソッドに変数を渡します
例:コントローラで
:予約モデルで
$waitTime = $booking->estimatedWaitTime($teamId);
:
public function queueLength()
{
$booking = $this->todaysBookings;
foreach ($bookings as $booking) {
// Calculate the length of all bookings
}
}
public function todaysBookings()
{
return $this->hasMany('App\UserBooking')->whereHas('booking', function ($q) {
$q->where('team_id', 2);
});
}
これは正しく予約を返し、queueLength方法でそれらをループに私を可能にします。しかし、私はtodaysBookingメソッドにteam_idを渡すことができるようにしたい。
代わりの方法としてtodaysBookingsを呼び出す場合:
$booking = $this->todaysBookings();
それはをループに私のために何を返しません。
私がここでやりたいことを達成するためのアイデアはありますか?
興味深いことに、方法として呼び出さないときは、どういうことが起こっていますか?それはあなたがそれを取得する必要はありませんので、それを '実行'ですか? – Lovelock
私はそのケースの答えを更新しました;) – Maraboc
もし私が2回upvoteすることができます... :) – Lovelock