php - Laravel Search Controller

Я пытаюсь сделать Laravel Search и застрял в точке обработки данных POST в виде массива Eloquent

Форма HTML как

<form>
    <select name="hidArray[]">
       <option name="test">Test</option>
       <option name="test2">Test2</option>
    </select>
</form>

Теперь этот вход был инициализирован как Bootstrap Multiselect

Когда я получаю входные данные в виде запроса POST, то он был представлен в виде массива, как показано ниже, и который определяется

array:2 [▼
0 => "test"
1 => "test2"
]

Теперь я хочу сформировать Eloquent запрос для получения результатов из базы данных.

Я попытался, как показано ниже:

if($request->has('hidArray')){
      $profile->whereIn('hidArray', $request->input('hidArray'));
}

Но я думаю, таким образом это не работает. Есть ли другой способ, которым я могу выполнить эту операцию?

1 ответ

Решение

Я не имею точного представления, что ты задумал, но согласно тому, что я понял.

Вы пытаетесь сделать что-то вроде:

$profile = ModelName::where('user_id',$id);

if($request->has('hidArray')){
      $profile = $profile->whereIn('hidArray', $request->input('hidArray'));
}

$profile = $profile->get();
Другие вопросы по тегам