Sitecore Helix, где разместить шаблоны источников данных

Я создаю базовую функцию оповещений, которая имеет шаблон AlertDataSource и папку оповещений. Согласно Helix, где я должен поместить это, в слой Project или Feature?

1 ответ

Решение

Когда вы создаете функцию, шаблон AlertDataSource должен находиться вместе с вашей функцией. В противном случае ваш код не сможет получить доступ к каким-либо данным из него (поскольку он не знает, что он существует).

С другой стороны, ваша папка - это совсем другое. Если вашей функции не нужно знать о расположении элементов источника данных, вы можете утверждать, что она может находиться на уровне проекта просто для организации ваших данных на уровне проекта. Но вы также можете решить, что функция требует, чтобы ваши данные были упорядочены (возможно, для источников данных или около того), и в этом случае они также должны быть в этой функции.

В теории вы должны использовать интерфейсные (базовые) шаблоны в вашей функции и производные шаблоны в вашем проекте - но это теория. Для шаблонов страниц это абсолютно верно. Что касается элементов источника данных, я видел людей практичными и не делающими этого (также потому, что не все в Sitecore могут так хорошо обрабатывать базовые шаблоны). Но вы правы в своем комментарии - теоретически вам нужны базовые шаблоны с полями в вашей функции и (пустые) производные шаблоны на уровне проекта.

Другие вопросы по тегам