Что делать после патча модуля? Как обновить модуль с системе после патча. (patch)

Аватар пользователя 3WT 3WT 3 августа 2012 в 15:26

Люди, подскажите пож. что делать (или ничего не делать -) после патча модуля. Логика вопроса следующая:
Как понимаю изначально инфа по модулю:

  1. После его активации, в соответствии с файлом xxx.module записывается в базу (систему)
  2. Или не прав и система работает с файлом sites/all/modules/xxx.module?

Ну и теперь (если п.1), после патча (т.е. изменения содержания файла xxx.module необходимо же инфу по модулю обновить в системе?
И что его надо 1)деактивировать, 2)удалять старый, 3)обновлять новый xxx.module 4)и потом заново активировать (чтоб в системе/базе) обновился?

Комментарии

Аватар пользователя 3WT 3WT 4 августа 2012 в 16:14

ser_house wrote:
update.php

update.php

  • до активации обновленного модуля в панели модулей
  • или после?
  • Или не имеет значения?
Аватар пользователя ser_house ser_house 4 августа 2012 в 13:58

Наверно, всё-таки, очистки кэша будет достаточно. Незачем запускать update.php

Аватар пользователя 3WT 3WT 4 августа 2012 в 23:26

ser_house wrote:
Наверно, всё-таки, очистки кэша будет достаточно. Незачем запускать update.php

не понял... так что к файлу sites/all/modules/xxx.module система периодически (постоянно) обращается что-ли?
я думал, что он читается только один раз (при активации модуля в панели модулей) и прописывается в базу (с чем система потом и работает)....

Аватар пользователя multpix multpix 4 августа 2012 в 16:52

"PromoGroup" wrote:

вряд ли патч будет затрагивать(изменять) существующую структуру бд,
как правило подобные изменения оформляются уже как новая версия - со всеми вытекающими.
по этому достаточно только drush cc all после применения изменений, как уже сказано выше,
и конечно просмотреть текст изменения для понимания происходящего - это снимет массу вопросов.

Аватар пользователя ser_house ser_house 4 августа 2012 в 17:26

Если Вы патчите модуль до установки — все изменения будут учтены в процессе установки (та самая галочка в списке модулей).

Если Вы патчите уже установленный (читай — работающий) модуль, то, в зависимости от изменений, может потребоваться очистка кэша, а может и не потребоваться, и Ваши изменения сразу проявятся на сайте. Очистка кэша будет нужна в том случае, если изменения затрагивают кэшируемые данные. Например: какой-нибудь вывод, запрос к базе, программный интерфейс (добавили/удалили хук), класс.

В общем, проще сбросить кэш в любом случае (Admin menu очень удобен для этого, или, как указывал выше [user=multpix] — drush)

update.php предназначен для совсем другого — он обеспечивает внесение изменений, описанных в hook_update

Как-то так.

Аватар пользователя ser_house ser_house 5 августа 2012 в 0:25

"PromoGroup" wrote:
я думал, что он читается только один раз (при активации модуля в панели модулей) и прописывается в базу (с чем система потом и работает)....

А Вы попробуйте модуль написать. Чтобы работал. А потом добавьте в него какую-нибудь синтаксическую ошибку, вот и увидите.

Аватар пользователя 3WT 3WT 5 августа 2012 в 0:38

ser_house wrote:
"PromoGroup" wrote:
я думал, что он читается только один раз (при активации модуля в панели модулей) и прописывается в базу (с чем система потом и работает)....

А Вы попробуйте модуль написать. Чтобы работал. А потом добавьте в него какую-нибудь синтаксическую ошибку, вот и увидите.

точно... все элементарное - просто