У меня сложилось впечатление, что, удалив поля из public static function baseFieldDefinitions
что они больше не потребуются при попытке спасти сущность. Моя функция теперь содержит только следующее:
$fields['id'] = BaseFieldDefinition::create('integer')
->setLabel(t('ID'))
->setDescription(t('The ID of the Content entity.'))
->setReadOnly(TRUE);
$fields['name'] = BaseFieldDefinition::create('string')
->setLabel(t('Name'))
->setDescription(t('The name of the Content entity.'))
->setSettings(array(
'max_length' => 50,
'text_processing' => 0,
))
->setDefaultValue('')
->setDisplayOptions('view', array(
'label' => 'above',
'type' => 'string',
'weight' => -4,
))
->setDisplayOptions('form', array(
'type' => 'string_textfield',
'weight' => -4,
))
->setDisplayConfigurable('form', TRUE)
->setDisplayConfigurable('view', TRUE);
Однако, когда я пытаюсь добавить свою сущность, она возвращает следующее исключение: Uncaught PHP Exception InvalidArgumentException: "Field changed is unknown." at /var/www/html/core/lib/Drupal/Core/Entity/ContentEntityBase.php line 474
Это моя первая попытка создать контентную сущность, поэтому, возможно, она ошибается.
Задача ещё не решена.
Других решений пока нет …