Приложение Nodejs с Express и MongoDB. У меня есть форма для вставки названия, автора и тела. После отправки данных я заметил, что вместо названия, автора и тела он выглядит как тело, автор и название. Итак, интересно, этот порядок важен в MongoDB? И почему он переключает позиции. Изображение показывает, как это должно быть и что я получил.
Кодовые фрагменты (схема мангуста, мопс, основная):
// article schema
let articleSchema = new Schema({
title: String,
author: String,
body: String
})
label Title:
input.form-control(name='title', type='text')
#form-group
label Author:
input.form-control(name='author', type='text')
#form-group
label Body:
textarea.form-control(name='body')
article.title = req.body.title
article.author = req.body.author
article.body = req.body.body
Приложение PS работает только с запутанным порядком в БД.
PPS Мой вопрос аналогичен этому, но не дублирован, потому что они говорили об обновлении существующих данных в БД, в то время как я говорю о добавлении новых данных в БД. Поэтому очевидно, что после обновления он появится в конце. Но когда я хочу добавить новые данные, я подумал, что это должно выглядеть так, как я писал в схеме мангуста. Итак, на данный момент я знаю, что это не так важно, но я хотел бы знать решение, чтобы исправить этот неправильный порядок, если он существует.
Итак, интересно, этот порядок важен в MongoDB?
В большинстве ситуаций нет, упорядочение полей в документе не имеет значения. MongoDB хранит записи данных как документы BSON. BSON представляет собой двоичное представление документов JSON (источник). Javascript не запрашивает свойства объекта guarentee.
Тем не менее, в MongoDB есть ситуации, где важное значение имеет порядок поля. При запросе встроенных документов встроенный документ должен точно соответствовать документу, указанному в запросе. Более подробную информацию можно найти здесь.