ノードの ORM として bookshelf.js を使用しています。私は2つのモデルを持っています
Post = bookshelf.Model.extend({
tableName: 'posts',
categories: function () {
return this.belongsToMany('Category');
}
});
Category = bookshelf.Model.extend({
tableName: 'categories',
posts: function () {
return this.belongsToMany('Post');
}
});
それらは、categories_posts テーブルを介して関連付けられているため、多対多の関係です。
今、ユーザーが特定のカテゴリのすべての投稿を表示できるようにしたいと考えています。しかし、すべての投稿だけではなく、ページネーションが必要です。しかし、特定のカテゴリの投稿の総数を取得することはできません。システムに存在する投稿の総数が常に返されます。
私はこれを試しましたが、合計は、によって識別されるカテゴリの下の合計投稿ではなく、テーブルCategory.forge({id: id}).posts().query().count('*').then(function(total) {});
内の合計投稿に等しくなります。これは可能ですか、またはテーブルを直接クエリするヘルパー メソッドを作成する必要がありますか?posts
id
categories_posts
ありがとう。