だから私はmongoオブジェクトを持っています:
@connection.register
class UserInformation(Document):
structure = {
'extra_infos':[{
'nickname':basestring,
'name_on_account':basestring,
}],
'age': int,
'mean_distance':float,
}
そして、ドキュメントをこれに更新しました
@connection.register
class UserInformation(Document):
structure = {
'extra_infos':[{
'nickname':basestring,
'name_on_account':basestring,
'email':basestring,
}],
'age': int,
'mean_distance':float,
}
次に、次の移行を進めました。
class UserInformationMigration(DocumentMigration):
def allmigration01_email(self):
self.target = {'extra_infos':{'$exists':True},'extra_infos.email':{'$exists':False}}
self.update = {'$set':{'extra_infos.email':[]}}
次に、次のコマンドを実行しました
migration = UserInformationMigration(UserInformation)
migration.migrate_all(collection=connection['user_info'])
しかし、次のエラーが発生し続けます。
UpdateQueryError: 'extra_infos.email' not found in UserInformation's structure
私は何を間違っていますか?extra_infos が配列だからですか?移行が正しく定義されていないのではないかと思いますが、配列 extra_infos に対して別の方法で移行を定義する方法がわかりません