Laravel: динамическое предложение where with Elouquent
Я вызываю URL с параметрами поиска, которые являются динамическими. Как я могу сформировать правильный Красноречивый запрос?
В теории:
- Запрос
- запрос где (someParam1)
- запрос где (someParam2)
- запрос orderby (someParam3)
- запрос
Мне нужна такая структура, поэтому я могу использовать предложение where, если param существует.
Если в Ларавеле есть какой-то другой способ, пожалуйста, дайте мне знать.
Ответы
Ответ 1
Легко с Laravel. Просто сделайте что-нибудь вроде этого:
$query = User::query();
if ($this == $that) {
$query = $query->where('this', 'that');
}
if ($this == $another_thing) {
$query = $query->where('this', 'another_thing');
}
if ($this == $yet_another_thing) {
$query = $query->orderBy('this');
}
$results = $query->get();
Ответ 2
Вы можете передать динамическое значение ниже примера
$user_auctions = $this->with('userAuctions')
->where('users.id', '=', $id)
->get();