Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”

0 Пользователей и 1 Гость просматривают эту тему.

*

Byte

  • *
  • 32
  • +0/-0
    • Просмотр профиля
Вывод характеристик товара
« : 11 Март 2013, 18:23:06 »
Подскажите пожалуйста товарищи форумчане как можно решить такую задачу:
имеется каталог товаров, у каждого вида товара свой набор характеристик, соответственно имена полей и их количество разные, хотелось бы набросать универсальный шаблон для вывода всех характеристик товара, догадываюсь что это можно сделать при помощи конструкции for-each, но вот в таком виде
	
<xsl:for-each select="document(concat('upage://', @id, '.characteristics'))">
<xsl:value-of select="."/>
</xsl:for-each>

результат получается "не найдено", хотя по сути все характеристики там есть. Заранее спасибо!

*

Rodogor

  • ***
  • 189
  • +24/-0
    • Просмотр профиля
Re:Вывод характеристик товара
« Ответ #1 : 11 Март 2013, 20:32:10 »
Если произвольные характеристики (поля) хранятся внутри определённых групп, то надо сделать шаблон для вывода property внутри group.
К примеру, у каждого товара есть группа properties.
<xsl:apply-templates select=".//group[name='properties']/property" mode="all_prop"/>

Далее уже нужно оформить вывод различных типо данных полей - выпадающий список, изображение, множественный выбор и т.п...
Можно посмотреть в сторону data::getEditForm и найти как реализован вывод всех property любого типа данных

*

Byte

  • *
  • 32
  • +0/-0
    • Просмотр профиля
Re:Вывод характеристик товара
« Ответ #2 : 11 Март 2013, 23:26:46 »
Большое спасибо за помощь) совет помог, только я еще раз убеждаюсь, что копипастом злоупотреблять не хорошо)) я это к тому, что у тебя опечатка name='properties' а не @name='properties') со всеми бывает, еще  раз огромное спасибо за совет)

*

Rodogor

  • ***
  • 189
  • +24/-0
    • Просмотр профиля
Re:Вывод характеристик товара
« Ответ #3 : 11 Март 2013, 23:47:48 »
Я обычно приписываю, что код не проверял, пишу прям так, такое действительно может быть..
Просто специфика языка и задач не позволяет быстро разом отладить - да и не всегда есть на это время...
Я форумом разгружаю мозги от повседневных задач, переключаюсь, поэтому в запарках могу напороть косяков