Предполагая простые отношения «один ко многим», например.Как получить только связанные данные?
const Blog = Bookshelf.Model.extend({
tableName: 'blog',
posts: function() {
return this.hasMany(Post);
}
});
const Post = Bookshelf.Model.extend({
tableName: 'post',
blog: function() {
return this.belongsTo(Blog)
}
});
Как получить все сообщения определенной записи в блоге без получения записи в блоге?
Использование:
Blog
.where('id', args.id)
.fetch({
withRelated: [
Post
]
})
.call('related', 'post')
.call('toJSON');
вызывает ронние запрос.
Единственный способ, которым я нашел это, - запросить объект Post
с использованием пользовательского запроса, например.
Post
.where('blog_id', parent.id)
.fetchAll()
.call('toJSON');
Проблема с последним подходом заключается в том, что он отрицает цель установления отношений, в первую очередь.