Нажатие значения в массив документа только в том случае, если значение не существует в массиве с Mongoose [duplicate]

Я создал это как ответ на ваш вопрос и свое собственное замешательство. Я надеюсь, что это помогает. Обратите внимание на PYTHONPATH как в командной строке py.test, так и в tox.ini.

https://github.com/jeffmacdonald/pytest_test

В частности: вы должны сообщить py.test и tox, где найти модули, которые вы включаете.

С помощью py.test вы можете сделать это:

PYTHONPATH=. py.test

И с помощью tox добавьте это в ваш tox.ini:

[testenv]
deps= -r{toxinidir}/requirements.txt
commands=py.test
setenv =
    PYTHONPATH = {toxinidir}

58
задан Jaap 12 September 2014 в 14:30
поделиться

1 ответ

Вы можете присвоить свой update объект запроса, который предотвращает обновление, если name уже присутствует в profile_set. В оболочке:

db.coll.update(
    {_id: id, 'profile_set.name': {$ne: 'nick'}}, 
    {$push: {profile_set: {'name': 'nick', 'options': 2}}})

Таким образом, это будет выполнять только $push для документа с сопоставлением _id и где нет элемента profile_set, где name есть 'nick'.

78
ответ дан JohnnyHK 26 August 2018 в 01:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: