Я установил MongoDB с Express и Mongoose для связи с моим угловым приложением.
В настоящее время у меня возникает следующая проблема:
На данный момент существует 3 разные коллекции. Когда я пытаюсь перейти на Collection.find({})
на 2 из них, это работает отлично, но когда я пытаюсь получить записи 3-го, я всегда просто получаю пустой массив ("[]" НИКОГДА не определен или что-то всегда просто пустые скобки) ).
Когда я пытаюсь получить записи в оболочке MongoDB, она отлично работает с той же самой командой.
Итак, вот мой нерабочий код (спецификация не является проблемой ({name: 1, _id: 0}), я также пытался разными способами без него):
app.get('/api/retrieveCompany', async (req, res) => {
Company.find({},{name: 1, _id: 0}, function(err, companies) {
if(err) {
res.status(500).json('Error')
} else {
console.log(companies)
res.status(200).json(companies)
}
})
})
Код метода, который работает нормально :
app.get('/api/retrieveContent', async (req, res) => {
Content.find({}, function(err, contents) {
if(err) {
res.status(500).json('Error')
} else {
console.log(contents)
res.status(200).json(contents)
}
})
})
Остальная часть кода, используемого для этого метода:
Мангуста Схема (Компания):
const mongoose = require('mongoose')
const CompanySchema = new mongoose.Schema({
name: String,
description: String,
boss: String,
})
const Company = mongoose.model('Company', CompanySchema)
module.exports = Company
Посвящение:
mongoose.connect('mongodb://localhost:27017/angulardb', { useNewUrlParser: true })
.then((err) => console.log('Mongoose up'))
const User = require('./models/users')
const Content = require('./models/content')
const Company = require('./models/company')
Схема мангуста (Содержимое) ( только для сравнения ):
const mongoose = require('mongoose')
const ContentSchema = new mongoose.Schema({
subject: String,
customer: String,
task: String,
date: Date,
inCharge: String,
comment: [String],
})
const Content = mongoose.model('Content', ContentSchema)
module.exports = Content
Ответ от CLI оболочки MongoDB:
> db.company.find({},{name: 1, _id: 0})
{ "name" : "IT Solutions" }
{ "name" : "Microsoft" }
{ "name" : "Company15" }
{ "name" : "New Company" }