Вы здесь

Как сделать поле Node Title Не обязательным?

0

в 7ке не было с этим проблем. а вот 8я версия чет не катит ((

делаю обычный _form_alter
Звездочка пропадает, если посмотреть через kint то параметр не изменился. естественно при валидации ругается. но ругается не на то что поле должно быть обязательным, а то что поле не может быть NULL

если посмотреть через kint массив title, то увидим там несколько required.

function unit_helper_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
$formObject = $form_state->getFormObject();
  if ($formObject instanceof \Drupal\Core\Entity\EntityFormInterface) {
    $entity = $formObject->getEntity();
    if (
      $entity->getEntityTypeId() === 'node'
      && in_array($entity->bundle(), ['unit'])
    ) {
        // Add lib to unit add form
        $form['#attached']['library'][] = 'unit_helper/unit_add_liba';
        //kint($form);
        $form['title']['widget'][0]['value']['#required'] = FALSE;
    }
  }
}
Версия Drupal: 
8.x
Категория: 
Entity API
Вопрос задан 15.09.2018 - 14:07
Аватар пользователя Denis
Denis
64

Ответы

0

Задавай значение при создание и при помощи css скрой поле.

Ответ дан 18.09.2018 - 18:22

Мне не нужно его скрывать.
в своем модуле, если поле пустое, то генерирую тайтл по своему алгоритму. При этом нужно оставить возможность пользователю ввести свой тайтл.

Комментарий оставлен 6 дней назад
0
Ответ дан 19.09.2018 - 16:00

Не совсем подходит, т.к. нужны не полные токены, а точко какая то их часть. например есть токен БедрумБ он может быть к примеру 2 Bedrooms , а с него мне нужно 2bdr и т.д.

Комментарий оставлен 3 дня назад
0

Вероятно это не протестированный способ.
Хуки нельзя тестировать и в 9м друпале будут заменены на Symfony EventDispatcher

Попробуйте отнаследоватся от docroot/core/modules/node/src/NodeForm.php и пеопределить параметр Title
Сохраняйте его как пустую строку если NULL неприемлим

Ответ дан 20.09.2018 - 17:23