Magnolia:如何在多值复合字段中启用 I18N?

Posted

技术标签:

【中文标题】Magnolia:如何在多值复合字段中启用 I18N?【英文标题】:Magnolia: How to enable I18N in a multivalue composite field? 【发布时间】:2015-09-28 18:26:57 【问题描述】:

如何在 Magnolia 5.4.1 的多值复合字段中启用 I18N? 在我的 yaml 中,我在每个部分都设置了 i18n: true,但是在对话框中我只能提供一个值对于所有语言的字段,它们不支持 I18N。

相关字段是“features”,每个字段包含一个标题和一个图像。

我的 .yaml:

actions:
  cancel:
    class: info.magnolia.ui.admincentral.dialog.action.CancelDialogActionDefinition
  commit:
    class: info.magnolia.ui.admincentral.dialog.action.SaveDialogActionDefinition

form:
  label: Abschnitt
  tabs:
    - name: tabMain
      label: Abschnitt
      fields:
        - name: image
          class: info.magnolia.ui.form.field.definition.LinkFieldDefinition
          targetWorkspace: dam
          appName: assets
          identifierToPathConverter:
            class: info.magnolia.dam.app.assets.field.translator.AssetCompositeIdKeyTranslator
          contentPreviewDefinition:
            contentPreviewClass: info.magnolia.dam.app.ui.field.DamFilePreviewComponent
          label: Bild
          required: false
          i18n: true
        - name: bodyText
          class: info.magnolia.ui.form.field.definition.RichTextFieldDefinition
          configJsFile: /.resources/sorba-templates/webresources/ckeditor/config-magnolia.js
          rows: 6
          label: Text
          required: true
          source: true
          i18n: true
        - name: features
          class: info.magnolia.ui.form.field.definition.MultiValueFieldDefinition
          label: Features
          i18n: true
          transformerClass: info.magnolia.ui.form.field.transformer.multi.MultiValueSubChildrenNodePropertiesTransformer
          field:
            name: compositeField
            class: info.magnolia.ui.form.field.definition.CompositeFieldDefinition
            transformerClass: info.magnolia.ui.form.field.transformer.composite.NoOpCompositeTransformer
            layout: vertical
            i18n: true            
            fields:
              - name: title
                class: info.magnolia.ui.form.field.definition.TextFieldDefinition
                label: Titel
                i18n: true
                required: true
              - name: image
                class: info.magnolia.ui.form.field.definition.LinkFieldDefinition
                targetWorkspace: dam
                appName: assets
                identifierToPathConverter:
                  class: info.magnolia.dam.app.assets.field.translator.AssetCompositeIdKeyTranslator
                contentPreviewDefinition:
                  contentPreviewClass: info.magnolia.dam.app.ui.field.DamFilePreviewComponent
                label: Bild
                required: true
                i18n: true

对话框仅支持所有其他字段的 I18N,除了“features”和此类字段(标题、图像):

【问题讨论】:

问题报告:jira.magnolia-cms.com/browse/MAGNOLIA-6396 【参考方案1】:

错误报告已被 Magnolia 确认:https://jira.magnolia-cms.com/browse/MAGNOLIA-6396。应该在未来的版本中修复。

更新:

错误报告已被拒绝,因为实际上已经可以了,只需要使用不同的转换器即可。请参阅此处的评论:

https://jira.magnolia-cms.com/browse/MGNLUI-3610?focusedCommentId=114823&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-114823

【讨论】:

以上是关于Magnolia:如何在多值复合字段中启用 I18N?的主要内容,如果未能解决你的问题,请参考以下文章

具有多值的 Magnolia 可折叠复合字段允许我保存但在编辑时无法重新打开

Magnolia 多值字段 - 从一个选项开始

检索并分配 jcr:mixinTypes magnolia 中的多值属性

在创建 Magnolia CMS 时访问当前表单

使用多值控制源隐藏组合框中的值

如何在多值参数上放置过滤器以不显示下拉列表中的所有值