【问题标题】:Determine if i18n is enabled for a JCR Property确定是否为 JCR 属性启用 i18n
【发布时间】:2017-05-30 15:15:58
【问题描述】:

如果我手头只有 jcr 属性名称,如何访问相应的 FieldDefinition。 是否有任何所需的功能,例如通过 jcr 属性名称查找字段定义?如果没有,我将如何访问 java 代码中配置的字段定义?

场景:我需要确定给定的 jcr 属性名称是否配置为定义中支持 i18n 的字段?

【问题讨论】:

  • 您可以访问 info.magnolia.ui.form.definition.FormDefinition 吗?

标签: properties internationalization jcr magnolia


【解决方案1】:

答案是您永远无法确定属性在上次编辑时是否已配置为 i18n-able(或具有任何其他特征),因为此后定义可能会发生变化。

但是要实现你想要的(获取定义),你需要做的是:

  1. 获取相关属性的父节点,
  2. 获取mgnl:template 属性的值。那是你的templateId
  3. 使用templateId从注册表中获取模板,
  4. 读取模板对话框属性的值,即你的dialogId
  5. 使用dialogId 从注册表中获取对话框
  6. 扫描对话框中的选项卡以查找具有您开始使用的 jcr 属性名称的属性定义

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-12
    • 2013-07-30
    • 1970-01-01
    • 1970-01-01
    • 2015-03-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多