diff --git a/src/Command/MigrationCommand.php b/src/Command/MigrationCommand.php index e647a1219a99a52ab161ee844b64e073ae26eab2..216d3ab0017a607e5d542e1dd49ff29248d6cdd3 100644 --- a/src/Command/MigrationCommand.php +++ b/src/Command/MigrationCommand.php @@ -36,11 +36,9 @@ class MigrationCommand extends Command // v3.2 'db.Configuration.updateMany({}, {$set: {"user.loginWithLesCommuns": true, "user.loginWithLesGoogle": true, "user.loginWithFacebook": true}});', 'db.Option.updateMany({}, {$set: {osmTags: {}}})', - 'db.Element.find({ privateData: { $exists: true, $ne: {} } }).forEach(function(e) { - for(var prop in e.privateData) { e.data[prop] = e.privateData[prop]; } - delete e.privateData; - db.Element.save(e); - });' + 'var mapping = {}; + db.Element.find({ privateData: { $exists: true, $ne: {} } }).forEach(function(doc){Object.keys(doc.privateData).forEach(function(key){mapping["privateData." + key]="data." + key})}); + db.Element.updateMany({ privateData: { $exists: true, $ne: {} } }, {$rename: mapping})' ]; public static $commands = [