Настройка модальности управления штуками в Apostrophe CMS - PullRequest
0 голосов
/ 03 февраля 2019

Я использую проект apostrophe-samples Github , чтобы провести некоторые тесты, касающиеся настройки модальных компонентов.До сих пор я добавил фильтры , как объяснено в руководствах , и добавил столбцы, как видно из исходного кода apostrophe-pieces (я думаю, что это будет интересная тема для добавления в руководства, IMHO).

Однако у меня есть пара сомнений, учитывая пример, что специалистов joinByArray продуктов и продуктов joinByArrayReverse Специалисты :

  • Можно ли каким-либо образом сортировать столбцы через пользовательский интерфейс (например, опция, позволяющая сортировку, щелкая заголовок таблицы), или она полностью полагается на defaultSort фигуры?
  • Можно ли добавлять другие поля, кроме заголовка, в качестве фильтров?Я смог добавить _specialists в качестве фильтра товаров, отображая заголовок, но мне интересно, можно ли использовать другое поле.
  • Можно ли добавить reverse объединений в качестве фильтров?Как уже было сказано, я смог добавить _specialists в качестве фильтра товаров, но не наоборот.
  • Можно ли добавлять / возвращать объединения как столбцы?Если я добавлю столбец «_specialists» I, мне будет показан массив, подобный [Object], а не заголовок, как в фильтре.

1 Ответ

0 голосов
/ 15 февраля 2019

"Можно ли каким-либо образом сортировать столбцы через пользовательский интерфейс (например, параметр, который позволяет сортировку путем щелчка по заголовку таблицы) или он полностью зависит от сортировки элемента по умолчанию?"

Нет в настоящее время, нет.Намерение состояло в том, чтобы предоставить эту функцию, но она до сих пор не разработана, так как удивительно, что это не было насущной потребностью для наших собственных клиентов, хотя это, безусловно, общая черта.

Это могло бы внести хороший вклад сообщества, или его можно было бы финансировать через поддержку апострофных предприятий.Вероятно, добавление не займет много времени.

"Могут ли другие поля, кроме заголовка, быть добавлены в качестве фильтров? Я смог добавить _specialists в качестве фильтра товаров, отображая заголовок, но яинтересно, можно ли использовать другое поле. "

В настоящее время нет, но это было бы простым пиаром.Вот соответствующая строка кода в apostrophe-schemas / index.js .У вас есть доступ к объекту field, поэтому вы можете легко сделать PR, чтобы посмотреть в другом свойстве doc, если установлено field.filterLabelField, скажем, все еще возвращаясь к title.

"Можно ли добавлять обратные объединения в качестве фильтров? Как уже говорилось, я смог добавить _специалистов в качестве фильтра продуктов, но не наоборот."

В настоящее время нет.В lib/modules/apostrophe-schemas/index.js вы увидите, что в настоящее время для них нет свойства addFilter.Реализация возможна.Код должен был бы извлечь выбранный документ на обратной стороне, получить идентификатор или массив идентификаторов, к которым он присоединяется, и связать вызов .and({ $in... }).

"Могут быть добавлены объединения / обратные объединениякак столбцы? Если я добавлю «_specialists» в качестве столбца, я получу отображенный массив, например [Объект], а не заголовок, как в фильтре. "

Этот файл поддерживается сегодня.Вам необходимо установить свойство partial для столбца.Это просто функция, которая принимает значение столбца и возвращает строку.Например:

addColumns: [
  {
    name: '_specialists',
    partial: specialists => specialists.map(specialist => specialist.title).join(' ')
  }
]

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

...