【问题标题】:Updating Mongo Object Field更新 Mongo 对象字段
【发布时间】:2016-05-10 16:14:55
【问题描述】:

我正在尝试更新存储在 Mongo 中的对象,该对象在注册我的站点时作为每个新用户文档的一部分创建。默认情况下,此对象为空。

如何将数据直接推送到子字段 profile.history 中的这个对象中。

到目前为止,我只能将数据推送到文档本身的根目录中。

看着图像,如上所述,我想写入配置文件中的历史对象。

【问题讨论】:

    标签: mongodb meteor meteor-accounts


    【解决方案1】:

    我想你说的是 Meteor.users 集合,下面是一些代码:

    let myDynamicField = 'foo'; // Or whatever you want, an input value for example...
    let update = {};
    update[`profile.history.${myDynamicField1}`] = 'blah';
    
    Meteor.users.update(
    {
        "_id": "testing123"
    }, 
    {
        $set: {
            update
        }
    });
    

    *已编辑以反映用户在 cmets 中的要求。

    【讨论】:

    • 是的,但我想将多个字段写入保存对象。 (我之前不应该解释)。我想在历史对象中创建一个新对象。
    • 不也是一样吗?我认为您可以轻松地执行“profile.history.foo.bar”,它会创建适当的缺失对象。
    • 我想这行得通。现在我只需要弄清楚如何动态更改该 foo 值。
    • 查看我修改后的答案。我在我的一个项目中使用它。
    • 我尝试使用这样的代码模式,但没有成功。 $set:{} 中的更新引发了错误。 (也许我误解了你的回答,你在暗示更新的内容)。
    猜你喜欢
    • 2020-05-03
    • 2021-02-25
    • 2017-01-23
    • 2014-07-24
    • 2016-07-25
    • 2018-06-09
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    相关资源
    最近更新 更多