|
@@ -3,6 +3,8 @@ const logger = require('@alias/logger')('growi:migrate:abolish-page-group-relati
|
|
|
const mongoose = require('mongoose');
|
|
const mongoose = require('mongoose');
|
|
|
const config = require('@root/config/migrate');
|
|
const config = require('@root/config/migrate');
|
|
|
|
|
|
|
|
|
|
+const { getModelSafely } = require('@commons/util/mongoose-utils');
|
|
|
|
|
+
|
|
|
|
|
|
|
|
async function isCollectionExists(db, collectionName) {
|
|
async function isCollectionExists(db, collectionName) {
|
|
|
const collections = await db.listCollections({ name: collectionName }).toArray();
|
|
const collections = await db.listCollections({ name: collectionName }).toArray();
|
|
@@ -36,8 +38,8 @@ module.exports = {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- const Page = mongoose.model('Page');
|
|
|
|
|
- const UserGroup = mongoose.model('UserGroup');
|
|
|
|
|
|
|
+ const Page = getModelSafely('Page') || require('@server/models/page');
|
|
|
|
|
+ const UserGroup = getModelSafely('UserGroup') || require('@server/models/user-group')();
|
|
|
|
|
|
|
|
// retrieve all documents from 'pagegrouprelations'
|
|
// retrieve all documents from 'pagegrouprelations'
|
|
|
const relations = await db.collection('pagegrouprelations').find().toArray();
|
|
const relations = await db.collection('pagegrouprelations').find().toArray();
|
|
@@ -73,8 +75,8 @@ module.exports = {
|
|
|
logger.info('Undo migration');
|
|
logger.info('Undo migration');
|
|
|
mongoose.connect(config.mongoUri, config.mongodb.options);
|
|
mongoose.connect(config.mongoUri, config.mongodb.options);
|
|
|
|
|
|
|
|
- const Page = mongoose.model('Page');
|
|
|
|
|
- const UserGroup = mongoose.model('UserGroup');
|
|
|
|
|
|
|
+ const Page = getModelSafely('Page') || require('@server/models/page');
|
|
|
|
|
+ const UserGroup = getModelSafely('UserGroup') || require('@server/models/user-group')();
|
|
|
|
|
|
|
|
// retrieve all Page documents which granted by UserGroup
|
|
// retrieve all Page documents which granted by UserGroup
|
|
|
const relatedPages = await Page.find({ grant: Page.GRANT_USER_GROUP });
|
|
const relatedPages = await Page.find({ grant: Page.GRANT_USER_GROUP });
|