#javascript #datetime #kendo-ui #kendo-scheduler
#javascript #дата и время #kendo-ui #kendo-планировщик
Вопрос:
Есть ли какой-либо способ заставить источник данных kendo использовать формат даты, отличный от выбранного языка?
У меня есть интерфейс на немецком и английском языках. Но мой источник данных всегда предоставляет даты в английском формате, что приводит к ошибке в немецкой версии, поскольку источник данных ожидает дату в немецком формате, как определено в культуре.
Может ли a определить формат в определении поля модели источника данных?
Обновление: источник данных моего планировщика kendo выглядит так:
dataSource: {
transport: {
read: {
url: "dates.json",
dataType: "json"
}
},
schema: {
model: {
id: 'taskId',
fields: {
taskId: { type: "number", from: "ID" },
ownerId: { type: "number", from: "Category" },
title: { type: "string", from: "Title" },
description: { type: "string", from: "Description" },
Location: { type: "string" },
start: { type: "date", from: "EventDate" },
end: { type: "date", from: "EndDate" },
isAllDay: { type: "boolean", from: "AllDayEvent" },
}
}
}
},
Формат даты события в моем источнике данных: дд / ММ / гггг ЧЧ: мм.
Британская культура английского языка, которую я использую для своего интерфейса на английском языке, использует именно этот формат. В немецкой культуре используется дд.ММ.гггг ЧЧ: мм.
Комментарии:
1. Вы используете серверный источник данных или локальный источник данных? Вы определяете схему модели в источнике данных?
2. Я использую файл .json в качестве источника данных, и моя схема модели определена в источнике данных.
3. Хорошо, тогда, пожалуйста, поделитесь примером формата поля EventDate. Вы используете формат ММ / ДД / ГГГГ на американском английском языке или ГГГГ-ММ-ДД?
4. отредактировал вопрос
Ответ №1:
Вы должны использовать формат на стороне сервера, который не зависит от культуры, которую вы используете в пользовательском интерфейсе. Использование английского формата, который вы фактически используете на стороне сервера, создает проблемы, подобные той, с которой вы столкнулись, и не подходит для API.
Если вы вернете дату в ISO 8601, вы можете быть уверены, что дата будет правильно проанализирована на стороне вашего клиента. Также, если вы не возражаете против часовых поясов, вы можете использовать формат ГГГГ-ММ-ДД ЧЧ: мм: сс, который также является стандартом в вычислениях.
Если вы не можете изменить файл, из которого вы извлекаете эти даты, посмотрите на эту тему . Кажется, есть некоторые обходные пути с использованием шаблонов kendo.parseDate, но хорошим решением является использование стандартного формата даты, не зависящего от культуры.