Использование mongoose для записи и извлечения данных в бэкэнде nodejs
я новее о MongoDb и Node.Js.
Я должен проверить, существует ли актив, а затем (если он не существует) создать его.
Это схема актива
var Schema = mongoose.Schema;
var AssetSchema = new Schema({
name: String,
creationDate: { type: Date, default: Date.now },
}, {collection: 'Assets'})
var Asset = mongoose.model('Asset', AssetSchema)
Проверить, существует ли актив
async function assetExists(assetName, callback) {
if(assetName){
Asset.findOne({name: assetName}
, function(err, asset){
if(err){
callback(err, null);
console.log('Error on find asset '+assetName)
} else {
callback(null, asset.name); //Using this I get the asset.name or undefined
}
});
}
}
Создать новый
async function addAsset(assetName, callback){
if(assetName){
var newAsset = new Asset({name: assetName})
await newAsset.save( function(err, asset){
if(err){
callback(err, null);
console.log('Error on add asset '+assetName)
}
})
}
}
Во всяком случае, я проверил, и ни один из этих двух методов не работает. Я думал, что это проблема с подключением, но подключение работает.
Я использую MongoDB Cloud, это строка подключения
mongodb+srv://<username>:<password>@<clustername>.4ny68c7.mongodb.net/?retryWrites=true&w=majority
Что мне не хватает? Оба метода верны? Спасибо