sintassi non corretta, devi leggere la proprietà di db.collection, ma la chiami. Esempio:
db.collection['products']!!!
db.collection['text'].save({
title: title,
author: author,
text: text
}, callback);
};
module.exports.findBookByTitle = function (db, title, callback) {
db.collection['text'].findOne({
title: title
}, function (err, doc) {
if (err || !doc) callback(null);
else callback(doc.text);
});
};
module.exports.findProductsByName = function (db, name, callback) {
db.collection['products'].findOne({
Ad esempio
var oggetto ={'some_value':'value','some_methid':function(){ return 'method result'}}
Puoi leggere e impostare la proprietà 'some_value', ad esempio:
object['some_value'] // return 'value'
object.some_value // return 'value'
// PASSO 2
Ok, nei tuoi metodi di database.js passi la variabile db, ma questa non è di un'istanza db, è un modello mongoose e devi scrivere in questo modo:
module.exports.findBookByTitle = function (model, title, callback) {
model.findOne({
title: title
}, function (err, doc) {
if (err || !doc) callback(null);
else callback(doc.text);
});
};
module.exports.findProductsByName = function (model, name, callback) {
model.findOne({
name: name
}, function (err, doc) {
if (err || !doc) callback(null);
else callback(doc.products);
});
};