Просмотр исходного кода

implement mongoose-paginate-v2

https://youtrack.weseek.co.jp/issue/GW-7758
- Fix offset in paginate options and recent pages routes
I Komang Mudana 4 лет назад
Родитель
Сommit
55f82f061a

+ 2 - 2
packages/app/src/server/models/obsolete-page.js

@@ -524,7 +524,7 @@ export const getPageSchema = (crowi) => {
 
     // find
     // builder.addConditionToPagenate(opt.offset, opt.limit, sortOpt);
-
+    const skip = opt.page ? (+opt.page - 1) * opt.limit : opt.offset;
     const customLabels = {
       totalDocs: 'totalCount',
       docs: 'pages',
@@ -535,7 +535,7 @@ export const getPageSchema = (crowi) => {
       totalPages: 'pageCount',
     };
     const paginationOptions = {
-      lean: true, limit: opt.limit, offset: opt.offset, page: opt.page, customLabels, sort: sortOpt,
+      lean: true, limit: opt.limit, offset: skip, page: opt.page, customLabels, sort: sortOpt,
     };
     builder.populateDataToList(User.USER_FIELDS_EXCEPT_CONFIDENTIAL);
     const pages = await Page.paginate(builder.query, paginationOptions);

+ 2 - 2
packages/app/src/server/routes/apiv3/pages.js

@@ -365,9 +365,9 @@ module.exports = (crowi) => {
    */
   router.get('/recent', accessTokenParser, loginRequired, async(req, res) => {
     const limit = 20;
-    // const offset = parseInt(req.query.offset) || 0;
+    const offset = parseInt(req.query.offset) || 0;
     const page = parseInt(req.query.page) || 1;
-    const offset = (+page - 1) * limit;
+    // const offset = (+page - 1) * limit;
     const queryOptions = {
       offset,
       limit,