Значение по умолчанию для поля 'datetime' в форме drupal 8, загруженной из БД

$form['dateopening'] = array(
  '#type' => 'datetime',
  '#title' => t('Opening Date'),
     '#default_value'=> date('Y-m-d H:i:s', strtotime($dateFromDB)),
);


Я хочу отобразить поле datetime в моей форме Drupal 8 с датой, загруженной из базы данных. Но во внешнем интерфейсе всегда отображаются пустые поля, как если бы данные не были предоставлены. Я пробовал несколько комбинаций для поля default_value, но ни одна из них ничего не показывает. Пожалуйста помоги.

(Если сообщение дублируется, перенаправьте меня. Я не могу получить то, что хотел, в результатах поиска)


person suneel    schedule 07.02.2016    source источник


Ответы (1)


Вы должны установить default_value как объект DateTime, например:

  $form['valid_dt'] = array(
    '#type' => 'datetime',
    '#default_value' => DrupalDateTime::createFromTimestamp($data->valid_dt),
    '#title' => $this->t('Valid'),      
  );  
person kuebel    schedule 24.02.2016