【问题标题】:Control for multiple text values in Alfresco Share控制 Alfresco Share 中的多个文本值
【发布时间】:2014-03-26 23:43:51
【问题描述】:

我有一个自定义数据模型,其中包含一些与此类似的字段:

<property name="my:Property1">
    <title>Property1</title>
    <type>d:text</type>
    <multiple>true</multiple>
</property>

问题在于它在 Share 中呈现为单个文本框。 我可以在表单中使用任何控件来管理允许多个值的文本属性吗?

【问题讨论】:

    标签: alfresco alfresco-share


    【解决方案1】:

    不接受 OOTB 并将其呈现为逗号分隔值。不过,构建一个适合您需要的自定义应该是相当简单的。

    在 Alfresco 有一个未解决的问题(对此进行投票:))

    https://issues.alfresco.com/jira/browse/ALF-3144

    【讨论】:

    • 我开始构建一个自定义模板来添加/删除属性,但是当我想保存包含逗号的值时遇到了问题。我的值应该存储为单个条目“Name1,Address1”,但它存储为两个单独的值 [“Name1”,“Address1”]。你对如何处理这个有什么建议吗?谢谢!
    • 根据您想要实现的一个我喜欢使用的好解决方案是使用常规 d:text 属性(不是 multiple=true)并将其保存为 json 字符串。然后自定义模板处理序列化/反序列化的东西。
    • 这是一个非常好的解决方案,但不幸的是,在这种情况下,我将不得不更改内容模型。我不能这样做,因为该属性用于我的客户已经在 Alfresco Explorer 中使用的许多功能中。我有一个想法来更改我的属性以使用其他符号而不是“,”,并在存储库中保存该属性的每个位置进行更改。您是否有更好的想法来解决这个问题而不改变内容模型?
    • 好吧,我会转义来自用户输入的逗号。一个java例子:StringBuffer sb = new StringBuffer(); for (int i = 0; i &lt; userName.length(); i++) { char c = userName.charAt(i); if (c == ',') { sb.append('\\'); } sb.append(c); } return sb.toString();
    【解决方案2】:

    我最近在 2015 年 2 月 7 日偶然发现了这个问题,并且遇到了同样的问题,即需要创建一个表或属性值,您也可以添加或删除记录。我偶然发现了这个 github 存储库https://github.com/msvoren/alfresco-datatable-property 但我注意到它在几年前的 javascript 中有一些错误。我已经更新了 javascript 以使用 alfresco community 5.0.c

    Git Hub Repo

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多