Как вручную установить плагин с собственными таблицами? Есть решение
Добрый день.
Возник вопрос по установке плагина. В частности интересует, почему некоторые плагины автоматически создают таблицы нужные для работы , а другие нет.
К примеру в конфигах есть файл db.php, в нем описывается структура таблиц. Я для своего плагина создал такой файл, закинул плагин в нужные папки, включил плагин. В секции с плагинами в магазине он появился, но при попытке зайти на страницу с настройками - выдается ошибка о том, что таблица для модели плагина не создана.
Для примера рассмотрел плагин устанавливаемый из админки, структура похожая, таблица создается. Возможно есть какая то процедура установки плагина, которая автоматически создает все таблицы, описанные в файле db.php. И каким то образом нужно запустить ее для моего плагина. Но как это сделать? Информацию не нашел.
Кроме того есть файл install.php у некоторых плагинов. В какой момент он вызывается? Как запустить его , если вручную копируешь плагин в магазин и включаешь его через конфиг plugins.php
3 ответа
Нашел решение проблемы в теме http://www.webasyst.ru/help/383/usloviya-vypolneni...
Видимо первый раз когда установил плагин, он еще был без db.php. В таблице настроек wa_app_settings осталась запись, что плагин установлен и далее все попытки обращения к плагину не запускали создание структуры из db.php.
Таким образом решение для повторного запуска установки плагина - удалить запись с плагином из таблицы wa_app_settings
Ну и дополнение:
Кроме удаления записи нужно также очистить кэш. Тогда сработает db.php и install.php.
Ну, а вообще, можно использовать метаобновления
http://www.webasyst.ru/developers/docs/basics/meta...
если нужно внести изменения в уже существующую структуру таблиц.
Пропустил этот раздел в мануалах.
Действительно это также решит проблему. Спасибо