Люди, подскажите пож. что делать (или ничего не делать -) после патча модуля. Логика вопроса следующая:
Как понимаю изначально инфа по модулю:
- После его активации, в соответствии с файлом xxx.module записывается в базу (систему)
- Или не прав и система работает с файлом sites/all/modules/xxx.module?
Ну и теперь (если п.1), после патча (т.е. изменения содержания файла xxx.module необходимо же инфу по модулю обновить в системе?
И что его надо 1)деактивировать, 2)удалять старый, 3)обновлять новый xxx.module 4)и потом заново активировать (чтоб в системе/базе) обновился?
Комментарии
update.php
update.php
drush updbdrush cc all
Наверно, всё-таки, очистки кэша будет достаточно. Незачем запускать update.php
не понял... так что к файлу sites/all/modules/xxx.module система периодически (постоянно) обращается что-ли?
я думал, что он читается только один раз (при активации модуля в панели модулей) и прописывается в базу (с чем система потом и работает)....
вряд ли патч будет затрагивать(изменять) существующую структуру бд,
как правило подобные изменения оформляются уже как новая версия - со всеми вытекающими.
по этому достаточно только drush cc all после применения изменений, как уже сказано выше,
и конечно просмотреть текст изменения для понимания происходящего - это снимет массу вопросов.
Если Вы патчите модуль до установки — все изменения будут учтены в процессе установки (та самая галочка в списке модулей).
Если Вы патчите уже установленный (читай — работающий) модуль, то, в зависимости от изменений, может потребоваться очистка кэша, а может и не потребоваться, и Ваши изменения сразу проявятся на сайте. Очистка кэша будет нужна в том случае, если изменения затрагивают кэшируемые данные. Например: какой-нибудь вывод, запрос к базе, программный интерфейс (добавили/удалили хук), класс.
В общем, проще сбросить кэш в любом случае (Admin menu очень удобен для этого, или, как указывал выше [user=multpix] — drush)
update.php предназначен для совсем другого — он обеспечивает внесение изменений, описанных в hook_update
Как-то так.
А Вы попробуйте модуль написать. Чтобы работал. А потом добавьте в него какую-нибудь синтаксическую ошибку, вот и увидите.
точно... все элементарное - просто