|
|
@@ -35,21 +35,19 @@ class PageTagRelation {
|
|
|
* remove all invalid relations that has reference to unlinked document
|
|
|
*/
|
|
|
static removeAllInvalidRelations() {
|
|
|
- return this.find()
|
|
|
- .then(relations => {
|
|
|
- // filter invalid documents
|
|
|
- return relations.filter(relation => {
|
|
|
- return relation.relatedTag == null || relation.relatedPage == null;
|
|
|
- });
|
|
|
- })
|
|
|
- .then(invalidRelations => {
|
|
|
- const ids = invalidRelations.map(relation => relation._id);
|
|
|
- return this.deleteMany({
|
|
|
- _id: {
|
|
|
- $in: ids
|
|
|
- }
|
|
|
- });
|
|
|
+ const self = this;
|
|
|
+ self.find(function(err, relations) {
|
|
|
+ // filter invalid documents
|
|
|
+ const invalidRelations = relations.filter(function(relation) {
|
|
|
+ return relation.relatedTag == null || relation.relatedPage == null;
|
|
|
});
|
|
|
+ const ids = invalidRelations.map(relation => relation._id);
|
|
|
+ self.deleteMany({
|
|
|
+ _id: {
|
|
|
+ $in: ids
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
}
|
|
|
}
|
|
|
|