Я являюсь автором модуля Date iCal, и новая основная версия, над которой я работаю (3.x), требует обновления схемы из двух частей для пользователей, у которых установлен 2.x. Я написал хук обновления, который вносит эти изменения, но если один из моих пользователей не сможет запустить скрипт обновления базы данных, он получит сообщение об ошибке, касающееся их импортеров каналов iCal.
Правильное решение для них - запустить скрипт обновления ... но если они просто войдут и вручную изменят своих импортеров, чтобы избавиться от сообщения, их импортеры останутся поврежденными (потому что вторая часть обновления схемы не будет были выполнены).
Так есть ли способ показать сообщение пользователям, которые не запустили обновление? Или каким-то образом принудительно выполнить хук обновления в первый раз, когда загрузка страницы происходит, когда 3.x устанавливается поверх 2.x?
variable_set()
в своей функции обновления функцию, которая устанавливает переменную, когда она была успешно запущена, и которую вы могли бы просматривать внутри,_preprocess_page()
но вы бы смотрели на нее каждый раз, поэтому не уверены, насколько это будет благоприятно для производительности.