НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
17 of 182 menu

Таблица node_revision__comment

Таблица node_revision__comment является дельта-таблицей для хранения данных поля комментариев (comment) при использовании ревизий материалов. Она содержит информацию о настройках комментариев для каждой отдельной ревизии узла, что позволяет отслеживать изменения в политике комментирования для разных версий материала.

Поля

Поле Тип данных Описание
bundle varchar(128) Тип материала (bundle), к которому относится данная ревизия. Ссылается на тип материала в node_type.
deleted tinyint Флаг удаления: 0 - запись активна, 1 - запись удалена.
entity_id int Идентификатор материала (nid), к которому относится ревизия. Внешний ключ к таблице node.
revision_id int Идентификатор ревизии материала. Внешний ключ к таблице node_revision.
langcode varchar(32) Код языка, для которого предназначены данные комментария.
delta int Порядковый номер значения поля для случаев, когда поле может содержать несколько значений.
comment_status int Статус комментариев для данной ревизии: 0 - скрыто, 1 - открыто, 2 - закрыто.

Как это работает

При создании новой ревизии материала система Drupal сохраняет не только содержимое материала, но и настройки связанных полей, включая настройки комментариев. Это позволяет восстановить не только текст материала, но и состояние комментариев на момент создания конкретной ревизии.

Поле comment_status определяет, разрешены ли комментарии к данной ревизии материала и в каком состоянии они находятся. Значение 0 означает, что комментарии скрыты (но существующие остаются доступными), 1 - комментарии открыты для добавления новых, 2 - комментарии закрыты (новые добавлять нельзя).

Связка entity_id + revision_id однозначно идентифицирует, к какой ревизии какого материала относятся данные о комментариях. При откате к предыдущей ревизии система использует данные из этой таблицы, чтобы восстановить соответствующие настройки комментариев.

Таблица является частью системы полей Drupal и работает в связке с основной таблицей данных поля node__comment, которая хранит актуальные (не ревизионные) данные.

Пример SQL-запроса

Получить информацию о настройках комментариев для всех ревизий конкретного материала:

SELECT nr.vid, nr.revision_timestamp, nrc.comment_status FROM node_revision__comment nrc JOIN node_revision nr ON nrc.revision_id = nr.vid WHERE nrc.entity_id = 123 ORDER BY nr.revision_timestamp DESC;

Смотрите также

  • таблицу node,
    которая содержит основные данные материалов
  • таблицу node_revision,
    которая хранит ревизии материалов
  • таблицу node__comment,
    которая содержит актуальные данные поля комментариев
  • таблицу comment,
    которая хранит сами комментарии
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить