Поиск ключевого слова во всех столбцах модели Laravel: методы и примеры кода

Для поиска ключевого слова во всех столбцах модели Laravel вы можете использовать различные методы. Вот несколько подходов с примерами кода:

Метод 1: использование методов orWhere и Like

$keyword = 'search term';
$results = YourModel::where(function ($query) use ($keyword) {
    $columns = Schema::getColumnListing('your_table');
    foreach ($columns as $column) {
        $query->orWhere($column, 'like', '%' . $keyword . '%');
    }
})->get();

Метод 2: использование необработанного SQL-запроса

$keyword = 'search term';
$results = YourModel::whereRaw("CONCAT_WS(' ', column1, column2, column3) LIKE ?", ['%' . $keyword . '%'])->get();

Метод 3. Использование Laravel Scout (требуется установка и настройка)

$keyword = 'search term';
$results = YourModel::search($keyword)->get();

Обратите внимание, что для метода 1 вам необходимо заменить 'your_table'на фактическое имя таблицы и 'YourModel'на имя вашей модели Laravel.