0

到目前为止,我找到了向孩子们展示的脚本:

http://localhost:8080/alfresco/service/slingshot/datalists/lists/site/MyFakeSite/documentLibrary

它返回给我类似的东西:

{
   "container": "workspace:\/\/SpacesStore\/8ef98a58-18f0-4f27-9fee-709f81ca0a65",
   "permissions":
   {
      "create": true
   },
   "datalists":
   [
      {
   "name": "MyPicture.jpg",
   "title": "My Awesome Picture File",
   "description": "Legen - wait for it - dary!!!",
   "nodeRef": "workspace://SpacesStore/54acabf9-bf6b-42f0-8b68-bbe9732b29b8",
   "itemType": "",
   "permissions":
   {
      "edit": true,
      "delete": true
   }
}
,
      {
   "name": "MyFirstLevelFolder",
   "title": "FirstLevel",
   "description": "",
   "nodeRef": "workspace://SpacesStore/181a36df-2892-4669-aac0-d13ff90457bb",
   "itemType": "",
   "permissions":
   {
      "edit": true,
      "delete": true
   }
}

这是下一级子节点的列表。

有没有办法:

  • 递归显示所有节点??

    而且不太重要:

  • 仅过滤答案的内容对象(文件夹循环但未返回)?

  • 过滤除名称之外的所有元数据,这对我来说是唯一重要的事情吗?

4

2 回答 2

1

这是一个可能对您有所帮助的 webscript 示例。在露天创建这个 webscript。

getChildren.get.desc.xml

<webscript>
    <shortname>Get Documents</shortname>
    <description>Display all Documents within Folder</description>
    <url>/getChildren</url>
    <format default="json">argument</format>
    <authentication>user</authentication>
</webscript>

getChildren.get.js

function main()
{
    var node = [];
    var folderName = args["foldername"];
    node = search.luceneSearch("PATH:\"/app:company_home/cm:"+folderName+"/*\"");
    model.totalItems = node.length;
    model.results = node;

} main();

getChildren.get.json.ftl

{
    "totalItems": "${totalItems}",
    "nodes":
    [<#list results as node>
        {
            "name" : "${node.properties["cm:name"]?trim}"
        }<#if (node_index + 1 < results?size)>,</#if>
     </#list>
    ]
}

在浏览器中创建触发此查询后:

http://localhost:8080/alfresco/service/getChildren?foldername=Test_Folder

注意:这将仅获取公司主页中文件夹的子详细信息。根据您的要求更改 javascript 文件中的 lucene 查询。

于 2015-01-21T10:12:54.690 回答
1

您可以创建自定义 webscript,而不是在上面指定的 webscript。根据您的要求自定义 webscript。

下面的链接完全用于在露天创建 webscript。

https://wiki.alfresco.com/wiki/Web_Scripts

于 2015-01-20T05:45:02.343 回答