Является ли плохой практикой использование ассоциативных массивов в mongodb? Мне любопытно, почему мангуст, похоже, не дает этого в своем определении схемы.Ассоциативный массив с схемой мангуста?
ответ
Если «ассоциативный массив» означает «объект», это прекрасно работает. Вы можете использовать только обычный старый «объект» или вы можете указать конкретные свойства, или вы можете использовать «mongoose.Schema.Types.Mixed», чтобы разрешить различные типы.
{
//regular old javascript/json data types
created: Date,
//this works just fine
statistics: Object,
//or you can specify the shape of the object
address: {state: String, line1: String},
//for the extra features you get with a true subdocument
nested: [SomeOtherMongooseSchema],
//Could be array, boolean, number, whatever. Can vary with each document.
grabBag: mongoose.Schema.Types.Mixed
}
Определяет ли форма объекта какое-либо влияние на возможности запросов? Я не уверен, могу ли я потерять некоторые возможности мангуста, используя Object. Я предполагаю, что это операции на уровне поля. Как виртуальные, геттеры, сеттеры, проверки и т. Д.? – paulkon
Вы все равно должны иметь возможность запрашивать все возможности, предлагаемые mongodb. Mongoose действительно только добавляет кастинг типов для запросов, но, насколько мне известно, кроме этого не добавляются и не удаляются какие-либо функции, когда дело доходит до запросов. Большая часть магии мангуста происходит во время операций записи. Мне сложно объяснить, что это может и чего не может сделать. Почему бы вам не задать вопрос, описывающий ваши конкретные варианты использования и цели, и тогда люди могут сделать конкретные предложения? Очевидно, что существует много гибкости с монгодбом. –
Вы правы, я думаю, мне придется опубликовать вопрос с моим конкретным прецедентом. – paulkon
- 1. ассоциативный массив с php
- 2. Двойной ассоциативный массив или индексируется + ассоциативный массив
- 3. оракул ассоциативный массив ассоциативный массив записей
- 4. Ассоциативный массив
- 5. новообращенный массив ассоциативный массив
- 6. Perl - Ассоциативный массив с индексом
- 7. Ассоциативный массив с JSON завитка
- 8. ассоциативный массив с веб-формой
- 9. многомерные ассоциативный массив с идентификатором
- 10. Ассоциативный массив с переменными значениями
- 11. Массив объединяется в ассоциативный массив
- 12. Split массив создать ассоциативный массив
- 13. преобразовать обычный массив ассоциативный массив
- 14. создать multidimetional массив ассоциативный массив
- 15. Переместить ассоциативный массив в массив
- 16. JavaScript «ассоциативный» массив доступ
- 17. PHP - Ассоциативный массив
- 18. Как отсортировать ассоциативный массив?
- 19. Looping AWK ассоциативный массив
- 20. Ассоциативный «многомерный» массив
- 21. Libreoffice basic - Ассоциативный массив
- 22. Сортировка ассоциативный массив
- 23. Ассоциативный массив против SplObjectStorage
- 24. Фильтр ассоциативный php-массив
- 25. Dlang ассоциативный массив массивов
- 26. PHP: упорядочить ассоциативный массив
- 27. Smarty Ассоциативный массив
- 28. Flex Ассоциативный массив
- 29. Циклический сдвигающий ассоциативный массив?
- 30. PHP - Обратный ассоциативный массив
Mongoose добавляет «схему», а ассоциативный массив не подразумевает никакой схемы (поскольку это документ). Если вы пропустите Mongoose, кроме использования зарезервированного поля '_id', вы можете сделать это свободно (и вы можете смешивать и сопоставлять с использованием собственного доступа MongoDB и Mongoose, если необходимо). – WiredPrairie