Как удалить поля по умолчанию из объекта контентаPhp

Кемеровские программисты php общаются здесь
Anonymous
Как удалить поля по умолчанию из объекта контента

Сообщение Anonymous »

У меня сложилось впечатление, что при удалении полей из общедоступной статической функции 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);
Однако, когда я пытаюсь добавить свой объект, он возвращает следующее исключение: Неперехваченное исключение PHP InvalidArgumentException: «Поле изменено неизвестно». в /var/www/html/core/lib/Drupal/Core/Entity/ContentEntityBase.php, строка 474

Это моя первая попытка создать объект контента, поэтому возможно, что-то сделано неправильно.

Подробнее здесь: https://stackoverflow.com/questions/367 ... ent-entity

Вернуться в «Php»