2013-10-10 85 views
0

我正在使用Mongoose存儲對API所做的請求。我使用這個數據條目將請求的進度保存在排隊系統中,所以我希望它們全部存儲在一個集合中以便查找。將Mongoose方案存儲在方案中

我想創建一個模型來表示通用請求標頭。

var ApiRequest = new Schema({ 
    route: String, 
    priority: String, 
    maxResponseAge: String, 
    progress: String, 
    timestamp: { type: Date, default: Date.now }, 
    request: UnknownMongooseSchema 
}); 

我想'請求'是一個未知的貓鼬方案(它取決於所做的API請求)。例如,這裏有幾個請求類型。

var UrlRequest = new Schema({ 
    urls: String, 
    followredirects: Boolean 
}); 

var TweetRequest = new Schema({ 
    user: String, 
    pass: String, 
    tweet: String 
}); 

有誰知道如何在計劃中存儲一個隨機的計劃嗎?

+0

你會切換到node.js;) - 一箇舊的鄰居 – srquinn

回答

0

忘記那個原創的想法......我在急速寫下它。

Mongoose的模式對象構造函數將對象字面量作爲它的第一個參數。將對象字面值帶出構造函數,然後使用您選擇的其他字段/模式來擴展對象字面值。

var schema = { 
    field: String, 
    anotherField: Boolean, 
} 

schema.aCollection = [anotherSchema]; 
var APIRequestSchema = new Schema(schema); 

schema.aCollection = [yetAnotherSchema]; 
var OtherRequestSchema = new Schema(schema);