У меня есть следующие 2 таблицы:
Таблица: Продукция
+----+---------+-------------+
| id | fn_id | created_at |
+----+---------+-------------+
| 1 | 4 | SOME TIME |
| 2 | 5 | SOME TIME |
| 3 | 6 | SOME TIME |
| 4 | 10 | SOME TIME |
| 5 | 10 | SOME TIME |
+----+---------+-------------+
Таблица Fn
+----+---------+-------------+
| id | fn_id | created_at |
+----+---------+-------------+
| 1 | 10 | SOME TIME |
| 2 | 11 | SOME TIME |
| 3 | 12 | SOME TIME |
| 4 | 14 | SOME TIME |
+----+---------+-------------+
И пользовательский ввод, который дает мне метку времени ($ user_timestamp).
Теперь мне нужно получить все товары, где
products.fn_id is 10
fn.fn_id is 10
fn.created == $user_timestamp
Модель продуктов имеет такое соотношение:
public function fn() {
return $this->hasMany('App\FN', 'fn_id', 'fn_id');
}
Теперь я попробовал несколько вещей, таких как запрос where, где я хочу проверить, равны ли fn_id для обоих значений «10» и значение create_at таблицы fn равно $ user_timestamp.
Однако я не смог этого сделать.
$products = Products::with('fn')->where('fn.fn_id', function ($query) use ($user_timestamp) {
$query->where([['fn_id', 10],['created_at', $user_timestamp]]);
})->get();