2017-11-23 7 views
0

したがって、Magnolia CMSのテンプレートに追加するコンポーネントのカスタムダイアログを作成します。MagnoliaでMultiValueFieldDefinitionを使用する場合の子の数を制限する

これまでのところ、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が許可子の最大(ともpossibily最小?)の数を持っていると思います。

これはオプションですか?私はmaxLengthを試しましたが、動作しません。ドキュメントはそのようなプロパティについては話しませんが、誰かが同様の問題を抱えている可能性があります。

可能であれば、Javaを避けることをお勧めします。

答えて

2

私はそうは思わない、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を拡張してこれらのプロパティを追加し、代わりにプロジェクトで使用することもできますが、そのことに興味はないと言いました。

+0

私はJavaの開発者に感謝します。 – Flipke

関連する問題