【问题标题】:Store a Mongoose scheme in a scheme将 Mongoose 方案存储在方案中
【发布时间】:2013-10-10 16:51:01
【问题描述】:

我正在使用 Mongoose 来存储对 API 的请求。我使用此数据条目在排队系统中保存请求的进度,因此我希望将它们全部存储在一个集合中以便于查找。

我想创建一个模型来表示通用请求标头。

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

我希望“请求”是一个未知的 mongoose 方案(这取决于发出的 API 请求)。例如,这里有几个请求类型。

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

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

有人知道如何在 Scheme 中存储随机 Scheme 吗?

【问题讨论】:

  • 你会切换到 node.js ;) - 一个老邻居

标签: mongoose database-schema


【解决方案1】:

忘记最初的想法......我匆忙写了它。

Mongoose 的模式对象构造函数将对象字面量作为其第一个参数。将对象字面量从构造函数中取出,然后使用您选择的其他字段/模式扩展对象字面量。

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-31
    • 2013-11-24
    • 2014-05-22
    • 2023-04-04
    • 1970-01-01
    相关资源
    最近更新 更多