Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Удаление столбца из DictField в MongoDB [Flask + MongoEngine]

Автор вопроса: Anand SainathОтветов: 1

Мне нужно удалить определенный столбец (в данном случае "Идентификатор бумаги") из DictField (в данном случае "контент") во всех документах. Соответствующий скрипт mongo-shell для того же самого:

db.list_input_file.update({},{$unset:{"content.Paper ID":1}}, false, true);

Как мне написать то же самое, используя MongoEngine, предполагая, что мой класс модели называется JListInputFile. документация для этого не очень полезна.

pythonflaskmongodbmongoengineflask-mongoengine

Ответы

Ответ 1 · рейтинг 1 · Ross

Я думаю, что проблема, с которой вы столкнулись, - это пробел в имени поля, означающий, что вы не можете передать его в качестве аргумента ключевого слова, например:

JListInputFile.objects.update(unset__content__Paper ID=1)

Работает ли использование словаря kwargs:

JListInputFile.objects.update(**{"unset__content__Paper ID": 1})

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы