drush entity-updates
개발자 도구입니다. 사용자 정의 모듈에서 엔티티 / 필드 정의를 변경하면이를 빠르게 적용 할 수 있습니다.
생산에서는 이런 일이 발생하지 않아야합니다. 공식 릴리스 사이에서 모듈을 업데이트하는 경우 모듈의 업데이트 코드가이를 처리해야합니다.
그러나 귀하의 경우 귀하의 사이트가 개발 중이라고 언급하고 있습니다. 따라서 많은 원인이 있습니다. 자체 코드 또는 개발 또는 알파 버전의 contrib 모듈 중 하나입니다.
CR 에서이 예를 찾았습니다. 엔터티 스키마 업데이트에 대한 쓰기 업데이트 기능 으며 자동화가 제거되었습니다 (추가 예제가있는 경우).
/**
* Add 'revision_translation_affected' field to 'node' entities.
*/
function node_update_8001() {
// Install the definition that this field had in
// \Drupal\node\Entity\Node::baseFieldDefinitions()
// at the time that this update function was written. If/when code is
// deployed that changes that definition, the corresponding module must
// implement an update function that invokes
// \Drupal::entityDefinitionUpdateManager()->updateFieldStorageDefinition()
// with the new definition.
$storage_definition = BaseFieldDefinition::create('boolean')
->setLabel(t('Revision translation affected'))
->setDescription(t('Indicates if the last edit of a translation belongs to current revision.'))
->setReadOnly(TRUE)
->setRevisionable(TRUE)
->setTranslatable(TRUE);
\Drupal::entityDefinitionUpdateManager()
->installFieldStorageDefinition('revision_translation_affected', 'node', 'node', $storage_definition);
}