Чтото переклинило в друпале 10 можно попробовать сохранить страницу без заголовка
при сохранении выходит ошибка и тело материала теряется:
[Fri Jun 07 21:16:57.446025 2024] [php:notice] [pid 1194775] [client 109.172.13.224:65312] Uncaught PHP Exception Drupal\\Core\\Entity\\EntityStorageException: "SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'title' c
annot be null: INSERT INTO "node_field_data" ("nid", "vid", "type", "langcode", "status", "uid", "title", "created", "changed", "promote", "sticky", "default_langcode", "revision_translation_affected", "published_at") VALUES (:db_i
nsert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7, :db_insert_placeholder_8, :d
b_insert_placeholder_9, :db_insert_placeholder_10, :db_insert_placeholder_11, :db_insert_placeholder_12, :db_insert_placeholder_13); Array\n(\n [:db_insert_placeholder_0] => 217911\n [:db_insert_placeholder_1] => 378862\n
[:db_insert_placeholder_2] => news\n [:db_insert_placeholder_3] => ru\n [:db_insert_placeholder_4] => 0\n [:db_insert_placeholder_5] => 12229\n [:db_insert_placeholder_6] => \n [:db_insert_placeholder_7] => 171778388
1\n [:db_insert_placeholder_8] => 1717784217\n [:db_insert_placeholder_9] => 1\n [:db_insert_placeholder_10] => 0\n [:db_insert_placeholder_11] => 1\n [:db_insert_placeholder_12] => 1\n [:db_insert_placeholder_13]
=> \n)\n" at /var/www/thesite.com/public_html/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php line 817, referer: https://www.thesite.com/node/add/news
Как исправить чтобы заголовок не давал сохранить?
Комментарии
А никаких сторонних модулей, потенциально влияющих на базовые поля формы материала, не установлено?
PS. С точки зрения Entity API - эта ситуация нештатная (ненормальная), поскольку для сущностей типа Node поле title определено в базовом наборе полей сущности (т.е. оно не является филдованным виджетом с произвольными настройками хранилища и/или параметров виджета, как любые другие произвольные поля). Поэтому свойство required должно устанавливаться в TRUE и обрабатываться методом BaseFieldDefinition класса сущности Node без возможности изменить значение этого свойства через какие-либо пользовательские интерфейсы. Однако, с помощью хуков сторонних модулей потенциально можно повлиять на базовое значение этого свойства для каких-то типов сущностей. Отсюда и вопрос выше.
Ну и кеш всё же стоит попробовать почистить - если ещё не делали этого.
PPS. Ещё вспомнил. Сейчас вроде поля с признаком required должны проходить валидацию на стороне браузера. Однако, инициируется ли при этом валидация полей конкретно сущностей Node в сабмит-функциях - не могу сказать, просто пока не копал вопрос. Т.е. всё же допускаю вариант, что кроме клиентской валидации поля заголовка у Node в D10 больше ничего уже и нет. Хотя это было бы несколько странно.
спасибо за ответ. там есть все что было вами упомянуто. модерируемый материал (Workflows), computed field, 2 самописных модуля для статистики, 2 по безопасности (Security Kit и Permissions Policy).
пробовал очищать кэш, и перестраивать доступы. не помогло.
попробую на тестовом сайте постепенно отключать модули.
Я бы в первую очередь обратил бы внимание именно на самописные модули. Кто их знает, что там кроме механики для статистики. Иной раз такие чудеса обнаруживаются.
Среди модулей случайно нет auto_entitylabel или autotitle или еще чего-то с *title* ?
Просто версия.
таких не нашел. но нашел
Машинное имя: pathauto
Версия: 8.x-1.12
Требует: Path,Path alias,Token
делает имя ссылки из заголовка
pathauto генерирует урлы, а не заголовки, так что врядли.
я понимаю. но текст он берет из заголовков.