Angular 7 Material DatePicker не может отформатировать с использованием DRF - PullRequest
0 голосов
/ 04 января 2019

Я использую

  • Угловой 7.0.4
  • Угловой материал 7.2.0
  • Django 2.1.4
  • Django Rest Framework 3.9.0
  • Postgresql 11.1

Я использую реактивные формы и Выбор даты материала (mat-datpicker) для простого управления формой.

Я искал высоко имало о том, как изменить формат в средстве выбора даты с мм / дд / гггг на гггг-мм-дд только для того, чтобы выяснить, в каком формате я установил поле формы, дата все равно отправляется как date_of_birth: "yyyy-mm-ddT04:00:00.000Z".

Я попытался настроить поле следующими 3 способами:

date_of_birth: String = '';
date_of_birth: Date = null;
date_of_birth: moment = null;

, но все 3 по-прежнему выводят тот же формат, что и выше, с часовым поясом.

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

Я не уверен, почему он игнорирует формат, отображаемый в средстве выбора даты.Поэтому моя конечная цель здесь - просто отправить ей дату в формате ГГГГ-ММ-ДД.

Любая помощь по этому вопросу будет признательна.

1 Ответ

0 голосов
/ 05 января 2019

Я понял это.Как бы просто это ни было, я, к сожалению, не нашел ничего подобного.Я новичок в angular, но я бы подумал, что это будет хорошо задокументировано для чего-то такого простого.

Вы должны обновить поле при сохранении формы.Например, в моем методе onFormSubmit () я использовал момент для обновления поля перед тем, как отправить его в свою службу API следующим образом:

onFormSubmit() {
  const result = this.patientForm.value;
  result.date_of_birth = moment(result.date_of_birth).format('YYYY-MM-DD');
  this.serviceName.addUser(result).subscribe();
}

Надеюсь, это поможет кому-то еще бороться так же, как я.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...