Я не уверен, что в случае с Views происходит именно так, как я сейчас скажу, но думаю стоит проверить. Друпал ^8 обычно кеширует любые страницы для анонимов по умолчанию. И даже порой при программном написании контроллера какой-то страницы/формы приходится специально думать о том, чтобы так или иначе подавить её кеширование для анонимов (если оно не нужно). То есть, возможно, имеет смысл просто отключить кеш этого представления.
Я позднее обнаружил (и, надеюсь, вы поняли), что в примере на автомате допустил ошибку в типе параметра &$form. В современных версиях PHP передача параметра как ссылки (&) не допускается. Т.е. правильно:
Вы же кешируете весь список нод с ОДИНАКОВЫМ тегом. Всё закономерно. Любое изменение любой ноды из этого списка, вызовет обновление всего кеша, маркированного этим тегом.
...Most themes will use a global-styling asset library, for the stylesheets (CSS files) that need to be loaded on every page where the theme is active. It is also possible to do with JS via a global-scripts asset library...
Он отрендерился, но вы же ничего не возвращаете из ::submitForm() и ничего не меняете в $form. Следовательно, build-структура формы остаётся неизменной. Если была хотя бы такая попытка:
Самое первое - стоит проверить (вы не написали об этом) присутствует ли в итоге включение JS в выходном HTML сайта. Сжатие/объединение JS временно отключить для этого.
Второе - стоит посмотреть JS-консоль браузера. Там порой бывают внезапные откровения.
thwipthwipx wrote: Поэтому я в своем примере указывал target_id:
['target_id' => 'asd', 'status' => 'closed']
На самом деле, это "ни о чём". Вы таким образом всегда меняли значение только для первого элемента. И то - для меня по-прежнему непонятно, как это вообще могло работать.
Кешированье представление только для анонимных пользователей. Возможно ли и нужно ли?
Я не уверен, что в случае с Views происходит именно так, как я сейчас скажу, но думаю стоит проверить. Друпал ^8 обычно кеширует любые страницы для анонимов по умолчанию. И даже порой при программном написании контроллера какой-то страницы/формы приходится специально думать о том, чтобы так или иначе подавить её кеширование для анонимов (если оно не нужно). То есть, возможно, имеет смысл просто отключить кеш этого представления.
$form_state->getValues() - сортировка полученных значений как настроено в Управлении отображением
Я позднее обнаружил (и, надеюсь, вы поняли), что в примере на автомате допустил ошибку в типе параметра
&$form
. В современных версиях PHP передача параметра как ссылки (&) не допускается. Т.е. правильно:Кешированье представление только для анонимных пользователей. Возможно ли и нужно ли?
Настроить кеширование по времени - не вариант? Скажем, 5 мин.
Кеш не работает
Вы же кешируете весь список нод с ОДИНАКОВЫМ тегом. Всё закономерно. Любое изменение любой ноды из этого списка, вызовет обновление всего кеша, маркированного этим тегом.
А проблемы начинаются примерно отсюда:
$form_state->getValues() - сортировка полученных значений как настроено в Управлении отображением
https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21Render%21...
ПРоблема с темой - не подключаются библиотеки
https://www.drupal.org/docs/theming-drupal/adding-assets-css-js-to-a-dru...
Почему блок вьюшки не отрендерился под поисковым полем формы?
Он отрендерился, но вы же ничего не возвращаете из
::submitForm()
и ничего не меняете в$form
. Следовательно, build-структура формы остаётся неизменной. Если была хотя бы такая попытка:выод списка USERов
1. /admin/structure/views/add ("Структура" > "Представления" > "Добавить представление")
2. "Настройки страницы" : "Создать страницу"
выод списка USERов
Тип представления: Страница/Page
Как дать класс родителю в HOOK preprocess_input__textfield
<?php
...
$vars['#wrapper_attributes']['class'][] = "...";
...
?>
Почему линк не кликабельный на странице?
Ключа 'text' нет в допустимом массиве опций для любых методов
Url::
.Как отобразить на странице названия двух Content types и их количество, которое есть на сайте?
Из кода непонятно, откуда у вас взялась $node, но вообще как-то так:
Обращение через один домен к другому по curl
Ещё как вариант - доступ с фиксированного IP, с проверкой в кастомном методе типа ::access (https://www.drupal.org/docs/8/api/routing-system/access-checking-on-rout...).
Ищу програмиста для выполнения ТЗ
Добрый день.
Покажите ТЗ. Скайп или ТГ у вас имеются?
Виджет Яндекс.Афиша на Drupal 8
Самое первое - стоит проверить (вы не написали об этом) присутствует ли в итоге включение JS в выходном HTML сайта. Сжатие/объединение JS временно отключить для этого.
Второе - стоит посмотреть JS-консоль браузера. Там порой бывают внезапные откровения.
Доработка модуля Quiz Drupal 7
Отписал в скайп.
Как в шапке заменить телефоны?
Отписал в ЛС.
Body is using the following invalid tokens: [site: name].
Странно, что, судя по сообщению об ошибке, похоже, что у вас какой-то токен [site:name] содержит пробел между
[site:
иname]
Найти виновника.
Изменение/удаления значения в множественном поле
На самом деле, это "ни о чём". Вы таким образом всегда меняли значение только для первого элемента. И то - для меня по-прежнему непонятно, как это вообще могло работать.
Изменение/удаления значения в множественном поле
Для этого мы и используем дельта-значение. В моём примере это 0 (первый элемент). Но можете поставить и любое другое, если оно уже есть, например:
Изменение/удаления значения в множественном поле
Попробуйте ещё как-то так, что ли:
Изменение/удаления значения в множественном поле
Мне тогда непонятно, как мог работать приведённый ранее вами код:
Изменение/удаления значения в множественном поле
Да, всё правильно, тут уже я промухал. Ну укажите дельту ему, если ругается. Что-то вроде:
Изменение/удаления значения в множественном поле
<?php
...
$clientId->field_checklist_forms['status'] = 'closed';
Проблемы в работе сайта при переключении на https
Странно, что на скриншоте остался протокол HTTP. На всякий случай: кеш пробовали чистить?