Soh*_*oqi 6 node.js sequelize.js
我是Node.js/Sequelize.js的新手.我有以下一段代码用于查询:
var agent_list = models.agent.findAll({
subQuery: false,
where: qry_filter,
attributes: select_attributes,
include:include_models,
group: ['agent_id'],
order: agent_data.sort || appConfig.DEFAULT_AGENT_SORT,
limit: agent_data.num_results || appConfig.DEFAULT_RESPONSE_SIZE
})
.then(function(agent_list){
console.log(agent_list);
});
Run Code Online (Sandbox Code Playgroud)
语句"console.log(agent_list)"打印从db检索的数据加上元信息,如选项:{...},modelOptions:{...}等.dataValues对象包含我想要的数据.结果集是嵌套的js对象,每个对象具有相同的结构,因此很难遍历结果集并仅获取dataValues.
我有使用PHP的经验,其中类似这样的 $ db - > Execute("$ qry")将返回带有meta的结果集并获取行 $ db - >执行("$ qry") - > getRows()可以使用.如何在续集中实现这一目标?
小智 1
您可以使用一个名为sequelize-values的npm 包。
所以在你的情况下,你的代码将是
models.agent.findAll({
subQuery: false,
where: qry_filter,
attributes: select_attributes,
include: include_models,
group: ['agent_id'],
order: agent_data.sort || appConfig.DEFAULT_AGENT_SORT,
limit: agent_data.num_results || appConfig.DEFAULT_RESPONSE_SIZE
}).then(function(agent_list) {
return agent_list.map(function(agent) {
return agent.getValues();
});
}).then(function(agent_list) {
console.log(agent_list);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1379 次 |
| 最近记录: |