遍历url参数并将其传递到数据库中

时间:2019-05-02 18:38:39

标签: javascript node.js express url mongoose

我试图遍历我所有的发帖请求,并将它们全部一次添加。 最好的方法是什么?

这是我的表格,以及我得到的数据。

var Form = new Schema({
    title: {
        type: String,
    },
    club: {
        type: String
    },
    date: {
        type: String
    },
    partyInfo: {
        type: [{
            entry: {
                type: Boolean,
                default: true
            },
            student: {
                type: Boolean,
                default: false
            },
            minAge: {
                type: Number,
            }
        }],
    }
});

现在我可以像这样FormController中的每个人了

let title = urlParams.title;
let club = urlParams.club;

但这不是很好。

这是我的全部控制人。

exports.contact = function(req, res) {
    let urlParams = req.query;

    let title = urlParams.title;
    let club = urlParams.club;

    let formParams = new Form({
        'title': title,
        'club': club
    });

    formParams.save(function (err) {
    });
    res.json(formParams);

};

我不确定如何做到这一点,有什么建议吗? 循环查询还是先将所有内容保存在数组中更好?

1 个答案:

答案 0 :(得分:2)

由于您正在使用猫鼬,因此可以使用它提供的验证:https://mongoosejs.com/docs/validation.html

如果将urlParams传递给模式,它将删除不属于模式的所有键。 Mongoose可以自动验证作为架构一部分的所有键。

示例:

exports.contact = function(req, res) {
    let formParams = new Form(req.query);
    formParams.save(function (err) {
    });
    res.json(formParams);
};