Как добавить значение к результатам @DBlookup в xpages?

Как добавить значение к результатам @DBlookup в xpages?

Я пробовал это, но, похоже, это не работает.

var v = @DbLookup("","Setup","Setup","ModRationales").push("Other 2"); вернуть v;

Он показывает 6.0 в моем списке.


person Bruce Stemplewski    schedule 24.05.2012    source источник


Ответы (2)


Прежде всего: @DbLookup возвращает строку, когда ищет только одно значение, и возвращает массив, когда находит несколько значений. Поэтому я предлагаю вам использовать функция DbLookupArray() доступна как xsnippet, так как эта функция всегда возвращает массив. У него есть и другие преимущества, такие как необязательное кэширование результата.

Тогда это просто вопрос добавления элементов в массив с помощью .push() для результата, возвращаемого DbLookupArray().

Ваш текущий поиск, скорее всего, возвращает один элемент, который в случае @DbLookup является строкой.

person Per Henrik Lausten    schedule 24.05.2012
comment
Попробуйте @List(@DbLookup(...), Другое) - person D.Bugger; 27.05.2012

Понятно:

var v = @DbLookup("","Setup","Setup","ModRationales");

v.push("Другое");

вернуть v;

person Bruce Stemplewski    schedule 24.05.2012
comment
Просто помните, что это не работает, если var v является строкой. См. ответ Пера Хенрика Лаустена о возвращаемом типе @DbLookup(). - person jjtbsomhorst; 25.05.2012