Задать вопрос
@akula22

Как создать многомерный массив для постановки его в dropDownList (yii2)?

Есть таблица новостей и их категорий.
запрос
find()->with(['category'])->orderBy(['position' => SORT_DESC])->all()

делаю связь
public function getCategory()
    {
        return $this->hasOne(NewsCategory::className(), ['id' => 'cat_id']);
    }


Мне надо получить такой массив
'cat1' => [
                1 => 'news_title1',
                2 => 'In news_title2',        
            ],
            'cat2' => [
                3 => 'news 3',             
            ],

Чтобы потом вывести его в dropDownList
Где cat1 это заголовки из таблицы категории а news это заголовки из таблицы news

подскажите как это сделать?
  • Вопрос задан
  • 194 просмотра
Подписаться 2 Простой Комментировать
Решения вопроса 1
@akula22 Автор вопроса
Бывают же чудеса, просто на шару написал так
ArrayHelper::map($array, 'id', 'title', 'category.title');


и все получилось )))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@developer007
делаете хелпер
helper/CategoryDropDown с методом toArray(..)
он возвращает массив с помощью foreach как пример
Ответ написан
Ваш ответ на вопрос

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

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