2016-10-09 2 views
0

Я работаю над пользовательским javascript doclib. У меня есть структура папок, которая похожа на A -> B -> C, где A и B имеют несколько дочерних элементов. У меня есть noderef из папки A, который я нашел черезКак обратиться к дочернему узлуRef в Alfresco-share?

«this.doclistMetadata.parent.nodeRef»

Что это самый простой способ получить Ури из узла «C» во время пребывания в узле Уровень? Можно ли использовать путь к файлу для этой цели?

+0

Узел C - это виртуальная папка, которую я пытаюсь открыть. – BlueStar

ответ

2

Вы должны получить ScriptNode объект (ScriptNode class):

var A = this.doclistMetadata.parent; 
// or by nodeRef 
// var A = search.findNode("workspace://SpacesStore/abcdefg-your-A-folder-id"); 

и использовать ScriptNode API

var C = A.childByNamePath("B/C"); 
print(C.name+" nodeRef: "+C.nodeRef.toString()); 
print(C.name+" children: "+C.childFileFolders()); 

Это работает для любого SCRI объект ptNode, виртуальные/интеллектуальные папки.

+0

Спасибо. Что делать, если «C» является виртуальной папкой? – BlueStar

+0

Он также работает для виртуальных/интеллектуальных папок. – wildloop

0

Я думаю, что вы можете использовать это:

Например, в рабочих процессах, вы можете выполнить поиск элемента с идентификатором «page_x002e_data-form_x002e_task-edit_x0023_default_assoc_packageItems». Если имеется более одного документа, это будет список разделенных запятыми noderefs.

var nodeRef = YAHOO.util.Selector.query("#page_x002e_data-form_x002e_task-edit_x0023_default_assoc_packageItems")[0].value; 

Используя инструмент отладки браузера, вы можете проверить html. Как вы можете видеть на изображении, прилагаемом ниже, Alfresco хранит документы, прикрепленные к задаче, в скрытом входе. Вы можете использовать YAHOO для его получения.

enter image description here

(Источник: https://stackoverflow.com/a/35257692/4337310)

Смежные вопросы