在Forerunner数据库集合中创建主键时,键属性是否可以存在于集合对象的对象中?

时间:2016-04-26 21:01:24

标签: javascript mongodb forerunnerdb

我有一个解决方法,但是我想知道为什么会失败 - 这是我的JavaScript错误吗? 我的应用程序使用两个模型我正在使用Forerunner来保存以前在我的MVC中创建的JSON模型 我想将Forerunner主键存储在一个对象中,以便更清楚(在我的第一个模型中)该键仅在Forerunner模型中使用。 密钥需要保存在两个模型中,这样当第一个模型更改时,我可以立即更新Forerunner模型 - 它是两个模型之间的链接。

以下是一个代码示例:

equalsIgnoreCase()

我确实尝试过,并且得到了令人困惑的结果,所以现在我只是将密钥作为集合的属性。 这是我使用上面的代码示例尝试的console.log结果。 forerunner insert()没有失败。 我对这个属性'gamedb._id感到困惑:“225b ......” 感谢您的任何建议或见解。

var games = db.collection("games", {
    primaryKey: "gamedb._id"
});

games.insert({
    gamedb : {
        _id: 1,
    },
    userDesc : "original 11x11",
    Size : [11,11],
    Plays : []
    .
    .
}, function (result) {
       console.log(result);
});

1 个答案:

答案 0 :(得分:1)

ForerunnerDB中的主键当前必须位于对象的根目录中。当你告诉它制作主键" gamedb._id"它不是将该字符串解析为路径,而是假设您将其作为根密钥传递,例如{" gamedb._id":myId}

有计划更新ForerunnerDB以允许嵌套的主键,但目前无法实现。

来源:我写过ForerunnerDB