Как получить информацию из вложенных объединений в Apostrophe CMS? - PullRequest
0 голосов
/ 27 ноября 2018

Я хотел бы знать, как извлекать данные из объединений внутри объединений.

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

module.exports = {
  extend: 'apostrophe-widgets',
  label: 'Categories',
  addFields: [
    {
      name: '_category',
      type: 'joinByArray',
      withType: 'category',
      label: 'Categories',
      withJoins: ['_lesson'],
    }
  ]
};

Код выше - это index.js для виджетов категории .И с помощью withJoins я могу получить информацию об этом уроке.

Дело в том, что урок сам состоит в основном из информации в соединениях:

module.exports = {
  extend: 'apostrophe-pieces',
  name: 'lesson',
  label: 'Lesson',
  pluralLabel: 'Lessons',
  addFields: [
    {
      name: '_teacher',
      type: 'joinByArray',
      withType: 'teacher',
      label: 'Teacher(s)',
    },
    {
      name: '_pill',
      type: 'joinByArray',
      withType: 'pill',
      label: 'Pills of knowledge that make the lesson.',
    },
  ]
};

Мой вопрос заключается в том, как я могу получить доступ к данным внутри _teacher и _pill в widget.html из категории-виджетов .

apos.log(data.widget._category._lesson) выводит правильные данные об уроке.

Но при попытке извлечь данные из объединения как таковое: apos.log(data.widget._category._lesson._teacher[0]) выводит undefined .

1 Ответ

0 голосов
/ 28 ноября 2018

withJoins: [ '_lesson._teacher', '_lesson._pill' ] сделает это.withJoins поддерживает точечные пути.

...