'NAME', 'TAGS_' => 'TAGS.ITEM'],
'filter' => ['=ACTIVE' => 'Y'],
'cache' => ["ttl" => 36000, 'cache_joins' => true],
]);
while ($obElement = $resElement->fetchObject()) {
}
выдает ошибку "Normal fields can be only the last in chain, TAGS Bitrix\Main\ORM\Fields\StringField is not the last. (0)"
что я делаю не так?
свойство - список, множественное
Уже просили сущность показать? А конкретно поле тэгов
В таблице элементов есть строковое поле TAGS. Не в этом причина?
заменил для теста, ошибка ушла, сейчас в вар дампе NULL выводятся $resElement = \Bitrix\Iblock\Elements\ElementPostsTable::getList([ 'select' => ['ID', 'NAME', 'TAAGS_' => 'TAAGS.ITEM'], 'filter' => ['=ACTIVE' => 'Y'], 'cache' => ["ttl" => 36000, 'cache_joins' => true], ])->fetchCollection(); foreach ($resElement as $element) { foreach ($element->getTaags()->getAll() as $value) { var_dump($value->getValue()); } }
А запрос как выглядит?
это где можно посмотреть?
SELECT `iblock_elements_element_posts`.`ID` AS `ID`, `iblock_elements_element_posts`.`NAME` AS `NAME`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`ID` AS `TAAGS_ID`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`PROPERTY_ID` AS `TAAGS_PROPERTY_ID`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`VALUE` AS `TAAGS_VALUE`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`DEF` AS `TAAGS_DEF`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`SORT` AS `TAAGS_SORT`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`XML_ID` AS `TAAGS_XML_ID`, `iblock_elements_element_posts_iblock_property12_src_element_item`.`TMP_ID` AS `TAAGS_TMP_ID`, `iblock_elements_element_posts_iblock_property12_src_element`.`ID` AS `UALIAS_0` FROM `b_iblock_element` `iblock_elements_element_posts` LEFT JOIN `b_iblock_element_prop_m4` `iblock_elements_element_posts_iblock_property12_src_element` ON `iblock_elements_element_posts_iblock_property12_src_element`.`IBLOCK_ELEMENT_ID` = `iblock_elements_element_posts`.`ID` AND `iblock_elements_element_posts_iblock_property12_src_element`.`IBLOCK_PROPERTY_ID` = 12 LEFT JOIN `b_iblock_property_enum` `iblock_elements_element_posts_iblock_property12_src_element_item` ON `iblock_elements_element_posts_iblock_property12_src_element`.`VALUE_ENUM` = `iblock_elements_element_posts_iblock_property12_src_element_item`.`ID` WHERE `iblock_elements_element_posts`.`ACTIVE` = 'Y' AND `iblock_elements_element_posts`.`IBLOCK_ID` = 4
У Вас поле новое называется TAAGS. Соответственно, надо $element->get('TAAGS')
ну там вроде бы можно и так и так обращаться к полям
Обсуждают сегодня