У меня есть модель, которая выглядит следующим образом:Mongoengine - как атомно обновить словарь?
class TestDoc(Document):
name = StringField()
friends = ListField(StringField())
address_book = DictField()
И я хотел бы атомарно обновить поле address_book всякий раз, когда изменяется список друзей. Как я могу изменить оба поля в атомной операции? Я не могу найти какой-либо модификатор в документации:
https://mongoengine-odm.readthedocs.org/en/latest/guide/querying.html#atomic-updates
, что делает атомарное обновление словарей. Спасибо!
ооо, я вижу: так вы получаете доступ к элементу словаря под названием Боб использовал __ ... Ах, я должен был подумать об этом! Еще раз спасибо, Росс! – Clara
Росс, у меня есть другой вопрос: что, если поле слова address_book будет выглядеть так: address_book = {"Mary": {"parents_address": ["12 OceanWay", "13 Long Rd"]}, "Bob": {" work_address ": [" 45 CentralRd "]}}? Как я мог атомизировать обновление, например, «12 OceanWay», чтобы изменить его на «13 OceanWay»? – Clara