Laravel: условный выбор столбцов с использованием Elequent - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь получить столбцы с некоторыми условиями if, такими как «если столбец нулевой, вместо этого получить другой столбец».

Мой текущий код

$products = Product::whereHas('images', function($q) {
    $q->where('published', 1)
})->get(['id as value', 'product_short_name as label']);

Нужно сделать так, чтобы

, если prdouct_short_name равно Null, получите меня product_name как label

1 Ответ

2 голосов
/ 05 февраля 2020

Если вы используете MySQL, вы можете попробовать использовать rawSelect.

Product::whereHas('images', function($q) {
    $q->where('published', 1)
})->selectRaw('id as value, IF (product_short_name IS NULL, product_name, product_short_name) as label')->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...