Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Mongodb:是否可以添加没有字段名的数据?_Javascript_Html_Mongodb_Reactjs_Meteor - Fatal编程技术网

Javascript Mongodb:是否可以添加没有字段名的数据?

Javascript Mongodb:是否可以添加没有字段名的数据?,javascript,html,mongodb,reactjs,meteor,Javascript,Html,Mongodb,Reactjs,Meteor,我实际上有两个问题,但它们或多或少都属于同一个概念: 假设我想在MongoDB中添加一行,那么仅仅使用“字段”的顺序就可以了吗 例如,如果我有我的收藏 items = { { name: "John", age: "28" }, { name: "Jake", age: "26" } } 我想添加行=[“Mike”,“30”],我可以用某种方式添加项吗?insertSpecial(行),这样我就不必填写“姓名”和“年龄”了 目前,我正在通过手动遍历数据库字段来构建JSON对象,

我实际上有两个问题,但它们或多或少都属于同一个概念:

  • 假设我想在MongoDB中添加一行,那么仅仅使用“字段”的顺序就可以了吗
  • 例如,如果我有我的收藏

    items = {
        { name: "John", age: "28" },
        { name: "Jake", age: "26" }
    }
    
    我想添加
    行=[“Mike”,“30”]
    ,我可以用某种方式添加
    项吗?insertSpecial(行)
    ,这样我就不必填写“姓名”和“年龄”了

    目前,我正在通过手动遍历数据库字段来构建JSON对象,如下所示:

    insertRow() {
        var items = this.props.data;
        var query = {};
    
        for (var i = 0, len = items.length; i < len; i++) {
            var textInput = "textInput" + i;
            var text = ReactDOM.findDOMNode(this.refs[textInput]).value.trim();
            query[items[i]] = text;
        }
        Meteor.call('items.insertRow', query);
    }
    
    将数组
    w
    中的所有项按顺序添加到数据库中的所有项。这是存在的还是我需要在for循环中这样做

    目前我正在做

    insertColumn() {
        var items = this.props.data;
        var col = ReactDOM.findDOMNode(this.refs.colName).value.trim();
    
        for (var i = 0, len = items.length; i < len; i++) {
            var textInput = "textInput" + i;
            var text = ReactDOM.findDOMNode(this.refs[textInput]).value.trim();
            Meteor.call('items.insertColumn', col, { "id": items[i].id, "text": text });
        }
    }
    
    }

    有没有办法避免在for中调用并手动使用id

    谢谢大家!

    假设我想在MongoDB中添加一行,那么仅仅通过 使用“字段”的顺序

    不,不可能。一个很好的理由是dict没有排序,与列表相反

    类似地,或者相反,如果我想向 数据库,比如说权重,我是否必须遍历每一行并添加它

    将数组w中的所有项按顺序添加到 数据库这是存在的还是我需要在一个 循环

    这样的方法不存在,恐怕您需要迭代所有文档,并使用新值逐个更新

    insertColumn() {
        var items = this.props.data;
        var col = ReactDOM.findDOMNode(this.refs.colName).value.trim();
    
        for (var i = 0, len = items.length; i < len; i++) {
            var textInput = "textInput" + i;
            var text = ReactDOM.findDOMNode(this.refs[textInput]).value.trim();
            Meteor.call('items.insertColumn', col, { "id": items[i].id, "text": text });
        }
    }
    
    'items.insertColumn'(column, value) {
    check(column, String);
    check(value, Object);
    
    Items.update(value.id, {
      $set: { [column]: [value.text] }
    });