Получил запрос на получение ролей пользователя от REST API Ansible Tower, после проверки его документации API, выяснились следующие шаги:
1. get user id by email: /api/v2/users?email=xxx
2. get the user's roles: /api/v2/users/{id}/roles
Работает, возвращает все роли, которые пользователь имеет в AnsibleБашня, во всех организациях он принадлежит. Итак, еще одна вещь, чтобы отфильтровать роли по конкретной организации. Застрял здесь и заблудился на API ...... В API ролей документ, он говорит:
"search_fields": [
"role_field",
"content_type__model"
],
"related_search_fields": [
"children__search",
"parents__search",
"descendents__search",
"content_type__search",
"ancestors__search"
],
Запутался в полях поиска и связанных выше полях поиска, не может связать их сВыходные данные ролей
{
"id": 11,
"type": "role",
"url": "/api/v2/roles/11/",
"related": {
"users": "/api/v2/roles/11/users/",
"teams": "/api/v2/roles/11/teams/",
"organization": "/api/v2/organizations/1/"
},
"summary_fields": {
"resource_name": "Default",
"resource_type": "organization",
"resource_type_display_name": "Organization"
},
"name": "Member",
"description": "User is a member of the organization"
}
Невозможно выполнить поиск по связанному полю, например, / api / v2 / role? organization__name = xxx, говоря: "Роль не имеет поля с именем 'Organization'". Я даже не могу искать роль по имени через /api / v2 / role? name = xxx, говоря: «Роль не имеет поля с именем« name »»
Просьба помочь мне пролить свет на поле поиска и соответствующее поле поиска в Ansible Tower API ... можно искать роли по организации или делать это каким-то грязным способом, например, проверять «имя_ресурса» в файле summary_fields?
Спасибо!