私は単純なJSクラスを持っています:
var User = function(id){
this._id = id;
this.sayHello = function (){
return "hello";
}
}
次に、デフォルトのNode.jsドライバーを使用してMongoDBに保存します。
users.insert(new User(1));
最後に、ユーザーを取得して、関数を実行しようとします。
users.findOne({_id:1}, function(err, item) {
console.log("Say hello: " + item.sayHello());
});
次のエラーが表示されますが、これは非常に紛らわしいです。
throw err;
^
TypeError: Object #<Object> has no method 'sayHello'
私はこれに完全に迷っています。私の理解では、MongoDBはJS関数とプロパティの両方をそのまま保存していました。そうでない場合は、これを回避する方法をお勧めしますか?
ありがとう!