UMIhelp

Разработка дополнительного функционала => Custom макросы => Тема начата: atach от 20 Декабря 2012, 10:11:58

Название: Выборки по пользовательскому umiHierarchyTypes
Отправлено: atach от 20 Декабря 2012, 10:11:58
Вопрос такой. В шаблоне данных создан дочерний шаблон данных для "раздела каталога" (к примеру с id=850).

Пробую сделать выборку именно по этому типу данных, но ничего не выходит, на сколько я понимаю выборка umiSelection работает только по зарегистрированным типам в системе, т.е. систмным ... так что ли?

	$hierarchyTypeId = "850";			
$sel = new umiSelection;
$sel->addElementType($hierarchyTypeId);
$sel->addHierarchyFilter($parentElementId, 10);
$result = umiSelectionsParser::runSelection($sel);
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: Vladimir от 24 Декабря 2012, 17:55:17
Если вы точно уверены, что 850 - это именно тип иерархии, а не тип объекта, и что в parentElementId есть страницы этого типа, то попробуйте добавить
$sel->forceHierarchyTable();

Не вижу ошибок, должно работать.
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: atach от 24 Декабря 2012, 18:01:40
Получил ответ от службы забот:
Сказали что данный класс umiSelection больше не поддерживается. И выборку произвольных типов данных нельзя сделать ...

Нужно пользоваться новым - "Selector"

$nums = new selector ('objects');
$nums->types('object-type')->id('850');
$nums->where('name')->equals($name);
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: Vladimir от 25 Декабря 2012, 10:15:57
ЧТО?!! как это не поддерживается? это с 2.8.6?
Т.е., обновить 2.8.5 до 2.8.6 уже нельзя? Конгениально...
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: atach от 25 Декабря 2012, 10:18:22
НАверно неприавильно написал!
Он поддерживается и присутвут, но класс устаревший и не развивается больше.
В замен него выпущен новый http://api.docs.umi-cms.ru/razrabotka_nestandartnogo_funkcionala/proizvolnye_vyborki/selector/
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: Vladimir от 25 Декабря 2012, 18:29:38
Раз поддерживается, то все типы должны выбираться. Сам 100 раз так выбирал.
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: atach от 25 Декабря 2012, 19:15:00
Сам мучался - не вибираются пользовательские типы данных, только из родители. В службе поддержки заверяли то же самое ....

Самое главное есть решение этой проблемы :), а остальное не важно!
Название: Re:Выборки по пользовательскому umiHierarchyTypes
Отправлено: admin от 10 Января 2013, 10:28:18
Vladimir: umiSelection работает как и работал, просто его не планируют развивать

atach: вся проблема скорее всего была в том что вы использовали id = 850, который на самом деле является object type id
Цитировать
В шаблоне данных создан дочерний шаблон данных для "раздела каталога" (к примеру с id=850).
вот тут писал об этом http://umihelp.ru/notes/vsegda_putayu_hierarchytypeid_i_objecttypeid/

в итоге при использовании seelctor выборке вы пишете
$nums->types('object-type')->id('850');
то есть все ок, а вот при использовании umiSelection
$sel->addElementType($hierarchyTypeId);