Виджет даты / ввод появляется для сохранения несовместимого для отображения - PullRequest
1 голос
/ 06 апреля 2019

Я полагаю, что это какая-то проблема с часовым поясом / UTC, но я не могу понять это.

Я установил Netlify CMS на моем веб-сайте Gatsby, используя следующую команду: config.yml:

backend:
  name: git-gateway
  branch: master

publish_mode: editorial_workflow

media_folder: src/images/uploads
public_folder: /uploads

collections:
  - name: "tourInfo"
    label: "Tour Info"
    files:
      - file: "static/json/tours.json"
        label: "Tours"
        name: "tours"
        fields:
          - {label: "Tour", name: tour, widget: list, fields: [
            {label: "Date", name: date, widget: "date"},
            {label: "Spaces", name: spaces, widget: "number"},
            {label: "Booked", name: booked, widget: "number", required: false} ]}

Я использовал это для создания дат тура, но при этом есть несоответствия:

Date selector

При выборе даты через CMS дата выглядит правильно, как указано выше.

Но тогда дата сохраняется как:

Inconsistent date

Это явно не соответствует дате, которую я ввел.

Это поведение также согласуется со всеми введенными датами, полученными через Гэтсби на входной стороне:

[
   {
      "date":"2019-04-03T23:35:50.291Z",
      "spaces":6,
      "booked":6
   },
   {
      "date":"2019-04-17T23:36:08.718Z",
      "spaces":6,
      "booked":null
   },
   {
      "date":"2019-05-01T23:36:19.622Z",
      "spaces":6,
      "booked":null
   },
   {
      "date":"2019-05-15T23:36:33.206Z",
      "spaces":6,
      "booked":null
   },
   {
      "date":"2019-06-05T23:36:49.265Z",
      "spaces":6,
      "booked":null
   },
   {
      "date":"2019-06-19T23:37:09.924Z",
      "spaces":6,
      "booked":6
   }
]

Они весь день.

Я подозреваю, что это какая-то проблема с часовым поясом? Моя локаль в настоящее время на BST.

Конечно, при работе с виджетом date время не должно иметь значения - почему Netlify даже экономит время? Я только вводю дату.

Как я могу исправить это? Поэтому, когда я вхожу в 2019/04/04, я получаю 2019/04/04?

1 Ответ

1 голос
/ 07 апреля 2019

В NetlifyCMS есть возможность установить формат даты.

* ** 1003 тысяча два * Пример
{label: "Date", name: date, widget: "date", dateFormat: "YYYY-MM-DD", "format": "YYYY-MM-DD"},
  • dateFormat это вывод виджета
  • format - это вывод данных

Эти форматы moment на основе форматирования.

См. Документы

...