一時的なマングースモデルに関する情報があります。パフォーマンス上の理由から、モデルに対して保存したくありません。ただし、サーバーに接続して要求するクライアントにこの情報を提供できるようにしたいと思います。
簡単な例を次に示します。
var mongoose = require('mongoose'),
db = require('./dbconn').dbconn;
var PersonSchema = new mongoose.Schema({
name : String,
age : Number,
});
var Person = db.model('Person', PersonSchema);
var fred = new Person({ name: 'fred', age: 100 });
Personスキーマには、保存したい2つの属性(名前と年齢)があります。これは機能します。コンソールに表示されます。
console.log(fred);
{名前:'フレッド'、年齢:100、_id:509edc9d8aafee8672000001}
ただし、急速に変化する属性( "status")が1つあり、これをデータベースに保存したくありません。しかし、動的に追跡してクライアントに提供したいので、キーとしてインスタンスに追加します/ valペア。
fred.status = "alive";
「生きている」キー/値のペアを追加した後、コンソールでfredをもう一度見ると、 fredが再び表示されますが、彼のステータスは表示されません。
{名前:'フレッド'、年齢:100、_id:509edc9d8aafee8672000001}
それでも、キーと値のペアは間違いなくそこにあります。
console.log(fred.status);
レンダリング:
生きている
クライアントに送信しているオブジェクトのJSON表現についても同じことが言えます。「ステータス」は含まれていません。
理由がわかりません..誰か助けてもらえますか?
または、代わりに、データベースに永続化されていないマングーススキーマに属性を追加するためのより良いアプローチはありますか?