[MONGODB] 몽구스는 항상 빈 배열 NodeJS를 반환
MONGODB몽구스는 항상 빈 배열 NodeJS를 반환
내가 찾아 findOne를 사용하여 시도하고 모두 문서를 반환하지 않습니다. findOne가 null을 반환하는 동안 발견은 빈 배열을 반환합니다. 널 (null)의 두 경우 모두 ERR뿐만 아니라.
여기 내 연결은 다음과 같습니다
function connectToDB(){
mongoose.connect("mongodb://localhost/test"); //i have also tried 127.0.0.1
db = mongoose.connection;
db.on("error", console.error.bind(console, "connection error:"));
db.once("open", function callback(){
console.log("CONNECTED");
});
};
다음 스키마는 나에게있다 :
var fileSchema = mongoose.Schema({
hash: String,
type: String,
extension: String,
size: String,
uploaded: {type:Date, default:(Date.now)},
expires: {type:Date, default:(Date.now()+oneDay)}
});
var Model = mongoose.model("Model", fileSchema);
그리고 내 쿼리는 여기에 있습니다 :
Model.find({},function(err, file) {
console.log(err)
console.log(file);
});
나는 데이터베이스에 물건을 업로드하고 RockMongo를 통해 그들을 볼 수 있지만 난 후에를 가져올 수는 없습니다. 난 그냥 기초의 일부를 누락 생각 있도록하여 MongoDB를 사용하여이 내 첫 번째 시간입니다. 올바른 방향으로 밀어 넣기 좋은 것입니다!
해결법
-
==============================
1.mongoose.model에 대한 호출은 기본이 복수로, 낮은 맡았다 모델 이름 인으로, 모델에 묶여 컬렉션의 이름을 설정합니다. 그래서 코드, 즉 '모델'이 될 것입니다. 파일 컬렉션 모델을 사용하려면 해당 라인을 변경 :
mongoose.model에 대한 호출은 기본이 복수로, 낮은 맡았다 모델 이름 인으로, 모델에 묶여 컬렉션의 이름을 설정합니다. 그래서 코드, 즉 '모델'이 될 것입니다. 파일 컬렉션 모델을 사용하려면 해당 라인을 변경 :
var Model = mongoose.model("Model", fileSchema, "files");
또는
var Model = mongoose.model("file", fileSchema);
from https://stackoverflow.com/questions/14183611/mongoose-always-returning-an-empty-array-nodejs by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 어떻게 MongoDB의 컬렉션에서 모든 문서를 하나의 필드를 선택하려면? (0) | 2019.11.30 |
---|---|
[MONGODB] MongoDB를는 : 배열의 항목 수를 카운트 (0) | 2019.11.30 |
[MONGODB] 당신은 몽고에서 $ addToSet에 대한 키를 지정할 수 있습니까? (0) | 2019.11.30 |
[MONGODB] 어떻게하여 MongoDB에서 배열 요소를 제거하려면? (0) | 2019.11.30 |
[MONGODB] 특정 값을 포함하는 배열 문서를 찾기 (0) | 2019.11.30 |