=> ['SORT' => 'ASC'],
'filter' => ['IBLOCK_ID' => IB_STORIES, 'ACTIVE' => 'Y'],
'select' => ['ID','NAME', 'UF_TYPE'],
])->fetchAll();
у меня пользовательское поле типа список, получаю его id. можно ли сразу как-то получить название?
да через runtime к \Bitrix\Iblock\PropertyEnumerationTable::class
как-то так $entity = \Bitrix\Iblock\Model\Section::compileEntityByIblock(IB_STORIES); $rsSection = $entity::getList([ 'order' => ['SORT' => 'ASC'], 'filter' => ['IBLOCK_ID' => IB_STORIES, 'ACTIVE' => 'Y'], 'select' => ['ID','NAME', 'UF_TYPE', 'PROP_NAME' => 'PROP.VALUE'], 'runtime' => [ 'PROP' => [ 'data_type' => \Bitrix\Iblock\PropertyEnumerationTable::class, 'reference' => ['this.UF_TYPE' => 'ref.ID'], 'join_type' => 'LEFT' ] ] ])->fetchAll();
А с каким пор инфоблочные списки имеют отношение к uf-полям разделов?
точно не посмотрел)
что-то не получается сделать также с таблицей \Bitrix\Main\UserFieldTable
Нет класса, который даст готовую сущность. У меня есть готовый кусок кода, но я его не публиковал у себя, потому что это наверное тот случай, когда лучше сделать отдельно запрос, а отдельно получить список вариантов списка. А-то сейчас Евгения снова в меланхоличное состояние загоним. Ещё и в пятницу
спасибо тогда наверное проще будет на стром ядре сделать
CUserFieldEnum::GetList ...тем более там внутри кеширование. Ещё и даже можно чуть поднастроить его время.
Обсуждают сегодня