Submitted by drudev on Tue, 08/28/2012 - 20:07
во первых есть такой модуль = http://www.drupal.ru/node/70478
Submitted by drudev on Tue, 08/28/2012 - 16:58
дело в том, что этот хук запускается только при первой установке модуля - после же первой установки запускаются
первое что попадается по данной проблеме - вот эта тема=http://www.drupal.ru/node/46570
итак, пробуем заменить на install() на вот этот хук = api.drupal.org/api/drupal/modules!system!system.api.php/function/hook_enable/7
и это работает!
аналогично поступайте и для uninstall = hook_disable()
Submitted by drudev on Tue, 08/28/2012 - 12:40
алгорит такой -
при создании поля и его экземпляра =
- сначала создаётся поле
- а только потом его экземпляр
при удалении =
- сначала удаляется экземпляр (при это вроде как потом и поле удалится автоматически в случае если этот экземпляр был последним)
- а только потом поле
но при каждой переустановке модуля мы будем получать новые строки в таблицах - проблема описана здесь
Submitted by drudev on Tue, 08/28/2012 - 12:40
объяснение здесь = http://fkn.ktu10.com/?q=node/2139
для начала привожу ссылку на эту тему = http://drupal.org/node/1760054
и ещё эту = http://www.drupal.ru/node/86850#comment-499221
Submitted by drudev on Tue, 08/28/2012 - 12:16
- 1991 — Blue Lines (Massive Attack)
- 1994 — Dummy (Portishead)
- 1995 — Maxinquaye (Tricky)
- 1996 — Who Can You Trust (Morcheeba)
- 1997 — Portishead (Portishead)
- 1998 — Mezzanine (Massive Attack)
Submitted by drudev on Mon, 08/27/2012 - 20:28
смотрим сюда = http://www.progimp.ru/articles/selection/
Submitted by drudev on Mon, 08/27/2012 - 18:39
этот код корректно устанавливает . но не может толком удалить (не удаётся удалить экземпляр поля) =
Submitted by drudev on Mon, 08/27/2012 - 18:20
данный хук позволяет определить "что именно является пустым элементом для поля" то есть - допустимо ли для данного поля данное значение в "пустом" виде .
если для даннго типа поля пустое значение допустимо - возвращаем true, иначе - false.
читаем далее = http://api.drupal.org/api/drupal/modules!field!field.api.php/function/hook_field_is_empty/7
да кстати - чтобы сказать, что всё идёт по плану достаточно написать =
// скажем, что всё хорошо
function LL_field_is_empty()
{
return TRUE;
}
Submitted by drudev on Mon, 08/27/2012 - 16:50
эпиграф =
Table field_config
id - The primary identifier for a field.
field_name - The name of this field. Non-deleted field names are unique, but multiple deleted fields can have the same name
взял отсюда
Итак - получается, что не проводя проверку на предмет уже существующей записи мы будем плодить их (эти самые записи) при каждой переустановке модуля.
Submitted by drudev on Mon, 08/27/2012 - 16:19
field_update_field() - данная функция позволяет обновить состояние поля,
например - снять с него "метку удаления"
чтобы всё сработало - в качестве параметра следует передать массив , содержащий в качестве индексов имя свойств поля, в качестве параметров - значения этих свойств.
читаем далее = http://api.drupal.org/api/drupal/modules!field!field.crud.inc/function/field_update_field/7
Pages