hook_schema () не удаляется при отключении модуля - PullRequest
2 голосов
/ 29 декабря 2010

Я установил схему для пользовательского модуля, которая создает таблицу при включении модуля.Но когда я отключаю модуль, таблица все равно остается.Я использую следующий код для удаления:

function sample2_install() {
  if(!db_table_exists('contact')){
    drupal_install_schema('sample2');
  }
}

function sample2_uninstall() {
  drupal_uninstall_schema('sample2');
}

Почему таблица не удаляется?

1 Ответ

6 голосов
/ 29 декабря 2010

Разница между отключением и удалением.Отключение сохраняет настройки модуля готовыми к работе всякий раз, когда он перезапускается.Удаление удаляет все, пока оно не будет повторно включено.

hook_uninstall() вызывается только при полной деинсталляции модуля.
hook_disable() вызывается при отключении только его.

Вы можете позвонить drupal_uninstall_schema(), если внутри hook_disable(), но я не рекомендую этого.Это будет означать, что все ваши данные будут удалены при отключении модуля - обычно удаление происходит, когда вы хотите полностью удалить все.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...