Как добавить категории в область?

Я играю с Ubuntu SDK. В данный момент я пытаюсь создать Scope Unity 8. В настоящее время я застрял со следующим:

  • Как добавить категории в область (список выбора над результатами см. В разделе "Область действия Amazon")

К сожалению, я не нашел полезной информации в документации для разработчиков.

1 ответ

Выпадающий над результатами список выбора отдела. Категории - это разные группы элементов в результатах области, поэтому у вас могут возникнуть проблемы с поиском правильного API.

Чтобы добавить отделы в вашу сферу, вы должны позвонить register_departments на объект ответа в вашем классе запроса run метод. Это занимает unity::scopes::Department::SCPtr объект, представляющий набор отделов, видимых для этого конкретного набора результатов:

  1. если пользователь в настоящее время просматривает отдел верхнего уровня, вы должны передать Department представляющий верхний уровень, с его непосредственными дочерними заполненными.

  2. Если пользователь просматривает подразделение, вы должны передать Department представляющий родителя, с заполненными его непосредственными детьми. Текущий отдел должен появиться в пределах детей.

Идея состоит в том, что предоставляются только те части дерева отдела, которые необходимы для немедленной навигации. Ваш код может выглядеть примерно так:

Department::SPtr parent = Department::create("parent", query(), "Parent Dept")
parent->set_subdepartments({
    Department::create("sibling", query(), "Sibling department"),
    Department::create("current", query(), "Current departmnet")});
reply->register_departments(parent);

Теперь все, что вам нужно сделать, это сделать так, чтобы ваша область предоставила результаты, относящиеся к выбранному пользователем отделу. Это доступно в вашем классе запросов как query().department_id(), Это будет соответствовать идентификатору одного из отделов, которые вы ранее зарегистрировали, или "" который должен рассматриваться как отдел высшего уровня.

Другие вопросы по тегам