Как искать роли по организации в API REST Ansible Tower - PullRequest
0 голосов
/ 11 октября 2019

Получил запрос на получение ролей пользователя от 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?

Спасибо!

...