denis.noskov: Комментарии

Главные вкладки

15 октября 2021 в 10:33

Спасибо за наводку. Мысль справедливая. Но о каком конкретно параметре идет речь?
перепробовал все таймауты, что нашел:
параметры mysql:
set global wait_timeout = 100000;
set global interactive_timeout = 100000;
php.ini: mysql.connect_timeout=100
В Apache таймаутов не нашел.
Результат = 0.

18 апреля 2021 в 12:56

Премного благодарен. Прошу не судить строго. На Drupal только 2 месяца.
Создал для теста простую страницу в содержании. Вставил туда кусок PHP.
Всё оказалось правдой:
1. При загрузке ядра из внешнего PHP контроля прав нет.
2. А также и контроля зависимостей тоже НЕТ. Грузится "типа" всё необходимое, но, как показывает мой случай, неизвестно где и что глюканёт.
3. $entity->field->value='new' сразу сваливает в ошибку.
4. $entity->set('field', 'some_value'); $entity->save(); честно срабатывает.
И всё же в продолжение темы.

17 апреля 2021 в 23:02

0. Пути Drupal не исповедимы
2. Спасибо.
3. $entity->field->value='new'; echo $entity->field->value; выдает 'new'. Без Save ошибок нет.
$entity->set('field', 'some_value'); Один хрен не работает. Для эксперимента создал новую сущность. Тупо с одним текстовым полем. Те же яйца, только в профиль.
Лог сейчас пишет "Error: Undefined constant "Drupal\\Core\\Entity\\SAVED_UPDATED". По курил тему. Похоже у модулей крыша съехала. Завтра "почищу компостером" зависимости. Переустановлю что можно.

17 апреля 2021 в 15:46

Про логи то я и забыл. Но! Там оказалось всё еще веселее.
" Attempt to create a field 'field' that does not exist on entity type 'object'".
Чудесатая история. Когда я поле читаю, оно есть. А когда записываю, его нет.
Ну типичный намёк на недостаток прав. НО! Сейчас отключил контроль прав Гостю на мою сущность "object". Результат тот же.

16 марта 2021 в 11:21

Огромное СПАСИБО! всё получилось через:
$entity = \Drupal::entityTypeManager()->getStorage( 'objects')->load();
$entity->set($field_name, $new_value);
$entity->save();
---
PS: А с кэшем я еще по играюсь. Ибо массовые операции с БД через entity работают на порядок медленнее, чем, через $query = \Drupal::database()->update(...

15 марта 2021 в 21:11

вау!!! так это мне предотаточно. и не надо маяться с кэшем и "левыми" update. Grand merci.
Упс. Не увидел в примере "condition". не же не все записи апдэйтить. Куда "primary key" тут вставить ?

15 марта 2021 в 20:43

с тэгами примерно понятно. можно попробовать.
нет блоков. кэш вьюхи выключен. update на отдельной странице в WebForms. после update идет "header('Location: '.$redirect);" на view отдельной страницей и там нет новой цифры. Страница перезагружается.
через Entity можно програмно сделать update? В том то и вся проблема. Мне надо с WebForms записать поле. WebForms сам это не умеет

15 марта 2021 в 18:29

Прочитал, но не совсем "догнал".
Есть у меня тип сущности (entity) по имени "obects" с набором (bundle) по имени "data". В наборе поле "code". Есть view по имени "code_list" , которая показывает список этих "code".
У меня нет модуля. Нет хуков. Есть PHP вставка в WebForm: \Drupal::database()->update этого поля одной записи по "primary key".
мой кэш тэг будет: "obects_list:data" ?
после update мне надо выполнить : Cache::invalidateTags("obects_list:data");?
Не понимаю. Куда тут запихнуть view по имени "code_list" ?

14 марта 2021 в 20:16

Эта фигня случается постоянно, когда попадается некорректно удаляющийся модуль. Иногда помогает перезапись "core". А в принципе ничего критичного. У меня пол года работает. То появляется. То пропадает.