@dk-web

Как получить (и надо ли) коллекцию Laravel в виде объекта?

Вопрос простейший. Но забыл( решил переписать старый проект.
В таблице хранится следующим образом
uid, title, rus, value

Это я года 4 назад делал простую самописную админку для одностраничника.
Соответственно там значения а-ля
1 'header' 'Заголовок' 'Компания ...'
2 'teaser' 'Текст под заголовком' 'Наша компания'
и т.д.

Думал по быстрому переписать на Laravel и сходу застрял(
давно уже не обращался к данным по ключу в массиве.
А там у меня все собиралось в $data. $data['mainpage']['header'] $data['services'] из другой таблицы и т.д.

Соответственно делаю, $mainpage = MainPage::pluck('value','title');
Получаю массив. И выводить только $mainpage['header']. Бесит). Привык $mainpage->header и т.д.

Собвственно 2 вопроса.
1) Как перевести коллекцию, чтобы я мог по свойству обращаться. Через foreach переборку?
2) Как такую "беду" оптимизировать?) Именно, что касается контента одностраничников. Я использую пакет для хранения настроек своих проектов, который в принципе и основан на хранении ключ-значение.
  • Вопрос задан
  • 192 просмотра
Пригласить эксперта
Ответы на вопрос 2
Ну сделай так, чтобы плюкалось не валью с титле, а PageEntity какой-нибудь, который будет моделью или просто классом сущности. И там уже будешь юзать $mainpage->header.
Ответ написан
У тебя изначально key-> value массив. Коллекция тебе не поможет для твоего желания.

Если хочешь изменить способ доступа, можешь конвертнуть в stdobject либо через (object) либо через json перекодирование двойное.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы