如何使用async.eachOfSeries

时间:2018-05-31 08:37:03

标签: javascript node.js express sequelize.js async.js

我正在使用Express,Postgres for DB和Sequelize为ORM构建应用程序。

我还导入了异步实用程序模块。

我有一个模型Post,它有一个标题。当我传递查询title=One&title=Two&title=Three时,我想创建3个带有这些标题的帖子。

我试过了:

async.eachSeries(req.query.title, function(value, callback) {
  console.log(value);
  Post.create({
    title: value
  });
});

但它只创建一个帖子'One',并且只记录One

如何正确设置以为每个req.query创建帖子?

1 个答案:

答案 0 :(得分:0)

Querystring是一个对象,因此您不能将它用作同一个对象。

“title = One& title = Two& title = Three”= {title:One}

另一个选择是使用数组并通过JSON.stringify

转换它

var URL  = "http://hostname/?title=" + encodeURIComponent(JSON.stringify(['One', 'Two', 'Three']));

var arrayTitle = JSON.parse( decodeURIComponent(req.query.title) );
async.eachSeries(arrayTitle , function(value, callback) {
    console.log(value);
    Post.create({
        title: value
    });
});