Фильтр community.general.to_prettytable — форматирование списка словарей в ASCII-таблицу
Примечание
Этот плагин фильтра входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install community.general. Для использования этого плагина фильтра требуются дополнительные зависимости; подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.general.to_prettytable.
Добавлено в community.general 10.7.0
Краткое описание
- Этот фильтр принимает список словарей и форматирует его в ASCII-таблицу с помощью библиотеки Python prettytable.
Требования
Следующие зависимости необходимы на локальном управляющем узле, который выполняет этот фильтр.
- prettytable
Входные данные
Здесь описаны входные данные фильтра — значение перед | community.general.to_prettytable.
Параметр | Комментарии |
|---|---|
Входные данные list / elements=dictionary / обязательный | Список словарей для форматирования. |
Параметры ключевых слов
Здесь описаны параметры ключевых слов фильтра. В следующем примере это значения key1=value1, key2=value2 и так далее: input | community.general.to_prettytable(key1=value1, key2=value2, ...)
Параметр | Комментарии |
|---|---|
column_alignments dictionary | Словарь, в котором ключи — имена столбцов, а значения — параметры выравнивания. Допустимые значения выравнивания: Например, |
column_order list / elements=string | Список имён столбцов, задающий их порядок в таблице. |
header_names list / elements=string | Список пользовательских имён заголовков, используемых вместо ключей словаря. |
Примеры
- name: Set a list of users
ansible.builtin.set_fact:
users:
- name: Alice
age: 25
role: admin
- name: Bob
age: 30
role: user
- name: Display a list of users as a table
ansible.builtin.debug:
msg: >-
{{
users | community.general.to_prettytable
}}
- name: Display a table with custom column ordering
ansible.builtin.debug:
msg: >-
{{
users | community.general.to_prettytable(
column_order=['role', 'name', 'age']
)
}}
- name: Display a table with selective column output (only show name and role fields)
ansible.builtin.debug:
msg: >-
{{
users | community.general.to_prettytable(
column_order=['name', 'role']
)
}}
- name: Display a table with custom headers
ansible.builtin.debug:
msg: >-
{{
users | community.general.to_prettytable(
header_names=['User Name', 'User Age', 'User Role']
)
}}
- name: Display a table with custom alignments
ansible.builtin.debug:
msg: >-
{{
users | community.general.to_prettytable(
column_alignments={'name': 'center', 'age': 'right', 'role': 'left'}
)
}}
- name: Combine multiple options
ansible.builtin.debug:
msg: >-
{{
users | community.general.to_prettytable(
column_order=['role', 'name', 'age'],
header_names=['Position', 'Full Name', 'Years'],
column_alignments={'name': 'center', 'age': 'right', 'role': 'left'}
)
}}
Возвращаемое значение
Ключ | Описание |
|---|---|
Возвращаемое значение string | Отформатированная ASCII-таблица. Возвращается: при успешном выполнении |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/to_prettytable_filter.html