Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Yii2 и MongoDb Как правильно вывести подкатегории?, Yii2 и MongoDb Как правильно вывести под категории?
sharomet  
 ۩  [x]    Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 145
Пользователь №: 30053
На форуме: 5 лет, 9 месяцев, 12 дней
Карма:

Не пью :
8 лет, 3 месяца, 8 дней


Всем привет.
Подскажите как можно вывести данные вложенного документа?
Например мне нужно получить продукты категории:
{
"_id" : ObjectId("11b97aa654bce41356002559"),
"name" : "Test",
"images" : "test.png",
"childs" : [
{
"_id" : ObjectId("00b12aa654bce41356002559"), // под категория
"name" : "Sub Test",
"images" : "test.png",
}
]
}


Для вывода под категории я использую вот такой метод:

public function actionView($id) { // Получаем id
$category = Categories::findOne($id); // Получаем категорию ро id.. может как то изменить запрос?.
if($category == null) { // если не существует то берем под категорию
$category = Categories::findOne(['childs._id' => $id]);
$this -> setMeta($category['childs'][0]['name'], $category['childs'][0]['keywords'], $category['childs'][0]['description']);
}else {
$this -> setMeta($category -> name, $category -> keywords, $category -> description);
}
return $this -> render('products', compact('products'));
}


$category['childs'][0]['name'] //как сократить подобную запись 


И если у под категории то же есть под категория то вообще пипец.
$category['childs'][0]['childs'][0]['name'] 


--------------------
Место клизмы изменить нельзя!
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователь сейчас на форуме



c начала 2017 года в Новосибирске.
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26447
Пользователь №: 21350
На форуме: 7 лет, 4 месяца, 13 дней
Карма: 739




Цитата
как сократить подобную запись

добавить методы в поисковую модель типа


public function getChilds(){
....
}

public function getChild($index){
....
}


и вообще, нафиг у тебя find() возвращает массив, когда модель с подручней



--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql (TSql, BI OLAP, MDX), Git, SVN, CodeIgnater, Yii 2, JiRA, Redmine, Bitbucket, Composer
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса