dbAdmin - управление базой данных
Модуль для управления таблицами базы данных.
Основные возможности:
- просмотр таблиц;
- переименование, очищение и удаление таблиц;
- редактирование данных прямо в ячейке;
- удаление строк таблицы;
- экспорт таблиц в текстовый файл;
- поиск таблицы по имени или классу;
- выполнение sql запросов.
Описание возможностей
После установки компонент можно найти в меню "Приложения". Он выводит список таблиц базы данных. Вид максимально приближенный к phpMyAdmin.

Для таблицы можно указать класс объекта MODX, что дает возможность использовать функционал xPDO и расширяет функциональность модуля. Например, можно изменять данные в ячейке, как в phpMyAdmin, сортировать столбцы, выполнять sql запрос через указание класса, искать таблицу по классу и т.д.

Системные таблицы с нужными параметрами добавляются при установке компонента. Для пользовательских таблиц нужно самостоятельно указывать класс и пакет. Последний нужен для xPDO. Я постарался упростить этот процесс. Механизм следующий:
- Открываем свойства таблицы (первая кнопка в колонке "Действия").
- Указываем название пакета и нажимаем кнопку с волшебной палочкой. Название класса подставится автоматически.
- Сохраняем.

Работать с компонентом достаточно просто и интуитивно. Двойной клик по строке открывает окно с данными выбранной таблицы. Если нужно выгрузить всю базу данных, нажимаем кнопку "Экспорт базы данных". Если нужно выполнить операции экспорта, очистки или удаления нескольких таблиц, работаем с меню "Массовые действия", предварительно отметив галочками соответствующие таблицы. Для работы с одной таблицей можно пользоваться контекстным меню или кнопками из колонки "Действия".
Еще одна фича компонента - выполнение sql запросов. Для этого есть отдельная вкладка SQL. Там можно писать стандартные запросы MySql. А так как у нас есть карта таблиц и классов, то возможен вот такой синтаксис:
select pagetitle, uri from {modResource}
Результат запроса показывается в нижней части пока через print_r. В дальнейшем планирую вывод в окне.
Для автоматического формирования запроса в колонке "Действия" есть кнопка "Select From", выводящая скрипт селекта в окно SQL запросов. Нажимаем на нее, например, у таблицы modx_access_actions и получаем вот такой скрипт в поле SQL запроса:
SELECT `id`,`target`,`principal_class`,`principal`,`authority`,`policy` FROM `modx_access_actions`
Разрешения
Для работы с компонентом пользователь должен иметь соответствующие права.
Название | Описание |
---|---|
tables_list | Разрешает вывод списка таблиц. |
table_view | Разрешает просмотр таблицы. |
table_save | Разрешает сохранять данные. |
table_truncate | Разрешает удалять записи из таблицы (truncate table). |
table_remove | Разрешает удалять таблицу (drop table). |
table_export | Разрешает экспорт таблицы. |
sql_query_execute | Разрешает выполнение sql запросов. |
Администратору с sudo дозволено всё.
Пока все. В планах, также возможность создания таблиц, колонок, индексов.
Дополнительно
Короткое видео.
Проект на Github.