现在用Sequelize for Node.JS绊倒了几个小时。我没有运气使用它来建立联想(我必须在有限的时间内撕掉我的大部分架构)。对于我的应用程序,只有少数关联(主要与博客相关)。
在我的一个博客API调用中(这是针对特定的博客ID):
exports.single = function (req, res, next) {
db.Models.blog.find({
where: res.locals.where
})
.success(function (blog) {
getAuthors(blog.BLOG_ID, function (authors) {
blog.AUTHORS = authors;
res.locals.data = blog;
next();
});
})
.error(function (err) {
res.locals.error = err;
next();
});
}
我正在调用getAuthors(blogId)来抓取作者中的所有作者< - >博客链接表:
function getAuthors (blogId, fn) {
db.Models.author.findAll({
where: { BLOG_ID: blogId }
})
.success(function (authors) {
fn(authors);
})
.error (function (err) {
fn([]);
});
}
它主要起作用。我正在收回正确的数据,但我正在尝试将其与原始博客数据合并。最好是作为财产。
答案 0 :(得分:1)
从第二个查询中转储我的authors对象的内容后,我了解了从Sequelize对象中提取数据时使用的属性
model.attritubes[];
是一个字符串数组,列出了从Sequelize Object中输出的数据属性。所以在我之前:
blog.AUTHORS = authors;
我做了:
blog.attributes.splice(5, 0, 'AUTHORS');
我不是一个聪明的人。