Как получить элементы состаного поля?

Добрый вечер. Столкнулся с такой проблемой. В карточке товара задаю составное поле, в справочнике добавляю пару элементов. Когда вывожу на страницу, то получаю массив данных.
Пример:
[0] => Array ( 
            [int] => 1 
            [rel] => 24845 
            [float] => 20 
)

Я так понимаю [rel] это id элемента справочника, тогда вопрос как получить данные которые содержит этот элемент. Имя там, какое нибудь свойство если оно есть?
Пробовал вот так:
umiObjectsCollection::getInstance()->getObject()
Выводит совсем не то, что нужно. Кто сталкивался, может подскажет?
  • Вопрос задан
  • 232 просмотра
Решения вопроса 2
ilyarsoftware
@ilyarsoftware
Разработка Веб-проектов (UMI.CMS, Yii, BEM)
Стандартное использование составного поля:
$someObjectId = 1253;
    $objects = umiObjectsCollection::getInstance();
    $bar = $objects->getObject($someObjectId);
    $optioned = $bar->getValue('_');
    $data = [];
    foreach ($optioned as $item) {
        $itemObject = $objects->getObject($item['rel']);
        $data[] = array(
          'objectId' => $item['rel'],
          'name' => $itemObject->getName(),
          'value' => $item['float'],
        );
    }


Кроме этого для элемента составного поля можно использовать следующий формат:

[
  'int' => 1, // bigint(20)
  'varchar' => null, // varchar(255)	
  'rel' => null, // int(10) - идентификатор объекта (umiObject)
  'tree' => null, // int(10) - идентификатор страницы (umiHierarchyElement)
  'float' => 0 // double
],
Ответ написан
neverovski
@neverovski Автор вопроса
Решил задачу, не усмотрел что выводятся названия доп полей. Сделал так:
$data = umiObjectsCollection::getInstance()->getObject($arr['rel']);
$data->getValue('название доп поля');
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
берете переменную которая содержит этот массив и выводите:
echo $myArray['rel'];
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
ООО РК Роял Набережные Челны
от 35 000 до 50 000 руб.
MAXVIDEO Москва
от 80 000 до 100 000 руб.
ISS Москва
До 140 000 руб.