Ограничение количества детей при использовании MultiValueFieldDefinition в Магнолии

Поэтому я создаю собственный диалог для компонента, который добавляю в шаблон в Magnolia CMS.

Пока что следующий yaml работает нормально.

form:
  tabs:
    - name: tabMain
      fields:
        - !include:/n-components/dialogs/include/backgroundColorSelectField.yaml
        - name: title
          label: Title
          class: info.magnolia.ui.form.field.definition.TextFieldDefinition
          maxLength: 75
          i18n: true
        - name: tiles
          label: Tiles
          class: info.magnolia.ui.form.field.definition.MultiValueFieldDefinition
          transformerClass: info.magnolia.ui.form.field.transformer.multi.MultiValueSubChildrenNodePropertiesTransformer
          field:
            name: compositeField
            class: info.magnolia.editor.app.field.CollapsibleCompositeFieldDefinition
            layout: vertival
            label: Collapse
            transformerClass: info.magnolia.ui.form.field.transformer.composite.DelegatingCompositeFieldTransformer
            fields:
              - name: tileTitle
                label: Tile title
                class: info.magnolia.ui.form.field.definition.TextFieldDefinition
              - name: tileText
                label: Tile text
                class: info.magnolia.ui.form.field.definition.TextFieldDefinition
                rows: 3

Тем не менее, я бы хотел, чтобы MultiValueFieldDefinition имел максимальное (а также, возможно, минимальное?) Количество разрешенных детей.

Это вариант? Я попробовал maxLength, но он не работает. Документы не говорят о такой собственности, но, возможно, у кого-то была похожая проблема.

Я предпочел бы избежать любой Java, если это возможно.

1 ответ

Я так не думаю, OOTB:

 41 public class MultiValueFieldDefinition extends ConfiguredFieldDefinition {
 42
 43     private String buttonSelectAddLabel = "buttons.add";
 44     private String buttonSelectRemoveLabel = "buttons.delete";
 45     private ConfiguredFieldDefinition field;
 46

А также ConfiguredFieldDefinition такой переменной-члена тоже нет. В конце концов, вы можете использовать свойства, потому что некоторые переменные-члены существуют в базовых классах Java.

Вы могли бы продлить MultiValueFieldDefinition и добавьте эти свойства и используйте их в своем проекте, но вы сказали, что не заинтересованы в этом.

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