У меня есть коллекция mongo db, как показано ниже.Дата форматирования в приложении mongojs и angularjs
{
"_id": {
"$oid": "57048f2f60b18f8e186e65b6"
},
"ID": 1,
"Room_ID": 303,
"StartTime": "2016-03-12T11:00:00Z",
"EndTime": "2016-03-12T12:00:00Z",
"Login_ID": "ABCDE"
}
Я использую db.collection.find()
запрос для выборки результатов. Я пытаюсь показать дату в двух частях 1. DD-MM-YY
и 2. HH-MM-SS
. У меня есть две идеи для этого. 1. Получите дату в нужном формате от collection.find()
или 2. После выбора записей в курсор проанализируйте его в коде angularjs, чтобы разделить значения даты и времени.
Я пробовал $dateToString из mongodb, но не смог получить результат. На самом деле я смущен этим.
db.RoomReservation.aggregate({ $project: {"Login_ID": "ABCDE", dt: { $dateToString: { format: "%Y-%m-%d", date: "$StartTime"}}}});
assert: command failed: {
"errmsg" : "exception: can't convert from BSON type String to Date",
"code" : 16006,
"ok" : 0
} : aggregate failed
Может кто-то пожалуйста, помогите мне в получении выход collection.find()
в следующем формате
Room_ID, Date, StartTime, EndTime, Login_ID
303, 2016-03-12, 11:00, 12:00, ABCDE
Это для MongoDB версии 3.0 или выше. Какую версию MongoDB вы используете? –
Привет, я использую '3.2.4' версию –
, вы должны оставить форматирование даты на слой пользовательского интерфейса. Существуют такие библиотеки, как Moment.js, для отображения даты в любых желаемых форматах. – titogeo