2014-02-26 6 views
2

나는 mongodb에 대한 node.js와 mongoosejs 프레임 워크로 작업하고 있습니다. 몽구스 모델을 객체로 변환하려고하는데, 그렇게 할 수 있었지만 모두를 얻는 것이 아니라 요소를 줄이는 것이 었습니다. 내가 시도한 코드 아래.몽구스 js 모델을 객체로 변환하는 방법

의 user.js

var schema = new Schema({ 
name:{ type:string }, 

title:{ type:string, default:"mr" } 
}); 


module.exports = mongoose.model('Users', schema); 

usermanager.js

var User = require(../user.js); 

var user = new User(); 
console.log(user.toString()); 
//printed as {_id:2583457assda312, title:'mr'} 

내가 그 객체의 이름 키를 기대하고있다. 나는 또한 그것도 나에게 동일한 응답을주는 객체를 시도했다. 이 문제를 해결하는 데 도움이되는 정보가 있습니까?

귀하의 사용은 이렇게 될 것입니다
+1

'이름'은 설정하지 않았기 때문에 개체에 없습니다. 또한, 나는'title '이 왜'user '인지 아닌지 이해하지 못한다. – Amberlamps

+0

@Amberlamps 이것은 단지 샘플 데이터이며, 나는 그것을 편집했다. –

+0

나는 이름과 제목과 같은 스키마에서 정의한 모든 요소를 ​​가져오고 싶습니다. –

답변

3

:

//printed as {_id:2583457assda312, name: "Fred", title:'mr'} 

또는 당신은 당신의 제목을 제공 :

var user = new User({ name: "Fred" }) 

하고 사용자가 정의한 것과 값을 얻을 것이다,이 경우에는 너무 여기 :

var user = new User({ name: "Wilma", title: "Ms" }) 

다시는 출력을 얻을

0 스키마는
//printed as {_id:2583457assda312, name: "Wilma", title: "Ms"} 

무엇을 당신이하려고하는 경우 검사가 몽구스 스키마에 paths 속성입니다

console.log(user.schema.paths) 

객체 그리고 당신이 정의 된 스키마의 다양한 부분의 정의를 제공해야 .

+0

스키마의 경로를 검사하려고하는데 "undefined"를 반환하는 user.paths를 시도했습니다. –

+0

나쁘다. 모델에서 전화하는 것을 잊어 버렸다. 먼저 우리가'schema' 속성에 접근하는 곳을 편집하십시오. –

+0

감사합니다 Neil it worked –

관련 문제