PMS_integrations admin template

This commit is contained in:
2024-12-11 18:59:06 +09:00
parent 806c611cc7
commit 6a3e6d5a65
5 changed files with 162 additions and 35 deletions

21
pms_integration/utils.py Normal file
View File

@@ -0,0 +1,21 @@
from pms_integration.admin import PluginLoader
def get_all_plugins():
"""
Загружает все плагины и возвращает их данные.
:return: Словарь с данными о плагинах.
"""
plugins_data = {}
try:
# Загружаем плагины
plugins = PluginLoader.load_plugins()
for plugin_name, plugin_class in plugins.items():
plugins_data[plugin_name] = {
"class_name": plugin_class.__name__, # Имя класса
"description": plugin_class.__doc__, # Описание из DocString
"module": plugin_class.__module__, # Модуль, где определён класс
}
except Exception as e:
print(f"[ERROR] Ошибка загрузки данных о плагинах: {e}")
return plugins_data