Podio API: как искать по всем полям, кроме комментариев к предметам?

Мне нужно найти текст в определенной рабочей области. Мне нужны все элементы и поля, кроме комментариев.

Я использую php-wrapper для Podio API и Поиск в пространстве функция:

$attributes = array(
    "query" => $query,
    "ref_type" => "item", // I need just items, not tasks, statuses etc.
    "search_fields" => "title"
);

$items = PodioSearchResult::space( $space_id, $attributes );

Если параметр search_fields будет удален, поиск будет выполняться не только по заголовкам, но и по всем полям. Однако он также будет искать в комментариях, оставленных для каждого элемента, и в результате возвращать эти элементы. Но мне нужны только результаты, основанные на значениях полей.

Конечно, можно перечислить все необходимые поля в search_fields. Но есть дюжина приложений с дюжиной различных полей каждое в этом пространстве. Более того, поля могут быть добавлены, отредактированы или удалены пользователями рабочей области. Таким образом, это выглядит как очень грубое и жестко запрограммированное решение для перечисления всех полей.

Есть ли другой способ избежать комментариев в результатах поиска?


person Eugen Baryshnikau    schedule 26.07.2017    source источник


Ответы (1)


У Podio нет специального метода, чтобы избежать только комментариев. Но вместо жесткого кодирования всех полей вы можете динамически запрашивать "Получить значения приложения", вызывать и использовать результат в "search_fields".

person priya lingam    schedule 01.08.2017
comment
В Документах говорится, что Получить значения приложения не взимается, а Вместо этого следует использовать поисковые ссылки. Однако это может быть подход. По крайней мере, это действительно лучше, чем жесткое кодирование. Спасибо :) - person Eugen Baryshnikau; 02.08.2017