Способ замены ключей базы данных статическими значениями при выводе материалов без использования связей между таблицами.
Постановка задачи
Допустим, есть события с типами: Конференция, Семинар и Форум. В БД хранятся ключи: type01, type02, type03. Требуется подставить читаемые названия в шаблон.
Шаг 1. Массив в модели
Добавьте публичный массив в модель:
public $eventType = [
'type01' => 'Конференция',
'type02' => 'Семинар',
'type03' => 'Форум',
];
Шаг 2. Использование в шаблоне
{{ $event->eventType[$event->type] }}
Пример в цикле
@foreach($events as $event)
{{ $event->title }}
{{ $event->eventType[$event->type] }}
{{ $event->city }}
@endforeach
Альтернатива: связи Eloquent
Для более сложных случаев, когда типы хранятся в отдельной таблице, используйте отношение belongsTo():
public function category() {
return $this->belongsTo('App\\Category');
}
Вызов в представлении: {{ $event->category->title }}