PMS_integrations admin template
This commit is contained in:
21
pms_integration/utils.py
Normal file
21
pms_integration/utils.py
Normal 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
|
||||
Reference in New Issue
Block a user