저는 웹 개발에 익숙하며 java/android 배경에서 새로 왔습니다. mongoose save()에 관해서 다른 모든 질문을 읽었습니다. db에 저장하지 않았지만 여전히 db에 쓰기를 할 수는 없습니다.몽구스 저장 기능이 작동하지 않습니다. post ('save')가 호출되지 않고 오류가 발생하지 않습니다.
감사합니다.
나는 내 스키마를 정의하는 grocery.js를 작성했으며 데이터베이스에 쓰고 읽으려면 groceryQueries.js라는 또 다른 스크립트를 작성했습니다. 프리 후크 저장이 호출되지만 저장 포스트 훅은 호출되지 않습니다. 이것은 내가 명령을 사용한다 :
노드 groceryQueries.js 과일, 사과, appl.jpg를 삽입, 여기
0.46는 출력 :
(노드 : 14548) DeprecationWarning : 또는을 사용하는 경우 옵션을 대신 사용하십시오.
open()
은 몽구스> = 4.11.0에서 사용되지 않으며openUri()
을 사용하십시오.. http://mongoosejs.com/docs/connections.html#use-mongo-client 연결이
PARAMS MongoDB를 위해 참조 : DeprecationWarning : 몽구스 : mpromise (몽구스의 기본 약속 라이브러리)는 지원되지 않습니다, 자신의 약속을 연결 : 과일, 사과, appl.jpg을 가 (14,548 노드) 0.46 대신 라이브러리 : http://mongoosejs.com/docs/promises.html
절약 사과
grocery.js :
,939,115,
groceryQueries.js :
var mongoose = require('mongoose');
var url = "mongodb://localhost:27017/deliveryservice";
mongoose.connect(url);
const Grocery = require('../server/models/grocery');
var db = mongoose.connection;
db.on('error',console.error.bind(console,'connection error'));
db.once('open',function() {
console.log("connected to mongodb");
doQueries();
});
function doQueries() {
var groceryCollection = Grocery.COLLECTION_NAME();//"groceries";
var arg = process.argv[2];
if (arg == 'find' ||
arg == 'insert') {
if (arg == 'find') {
var nameArg = process.argv[3];
if (nameArg === undefined) {
var error = new Error('undefined name');
throw error;
}
Grocery.find({name: nameArg},function(err,groceries) {
if (err) {
return console.error(err);
}
console.log("groceries: " + groceries);
db.close();
});
} else if (arg == 'insert') {
var paramsArg = process.argv[3];
var throwError = false;
if (paramsArg === undefined) {
throwError = true;
}
console.log("params: "+paramsArg);
var parameters = paramsArg.split(",");
if (parameters.length != 4) {
throwError = true;
}
if (throwError) {
var error = new Error('undefined parameters <name>,<img>,<price>');
throw error;
}
var newGrocery = new Grocery({category: parameters[0],name: parameters[1], img: parameters[2], price: parameters[3]});
//console.log("before save: "+newGrocery.toString());
newGrocery.save(function(err,newGrocery) {
if (err) {
throw err;
}
grocery.toString();
});
db.close();
}
} else {
console.log('help: find <name> | insert <category>,<name>,<img>,<price>')
}
}