Doctrine / MongoDB / Strategy - Обновление документов с помощью persist / flush - PullRequest
4 голосов
/ 15 февраля 2012

Я запускаю модульные тесты для документов mongo db ... и обнаружил, что единственный способ, которым я мог обновить существующий объект после его нахождения, - это установить (Strategy = "set") внутри аннотаций. Кто-нибудь знает, почему это должно быть установлено? И еще лучше, что именно это меняет при использовании этого параметра?

1 Ответ

0 голосов
/ 03 мая 2013

Атрибут strategy="set" относится к аннотации @Collection для свойства документа:

http://docs.doctrine -project.org / projects / doctrine-mongodb-odm / en / latest/reference/annotations-reference.html#collection

например:

class User {

   /** @Collection(strategy="set") */
   public $tags;
}

Значением по умолчанию для стратегии является pushAll, к которому будут добавлены новые значения, добавленные к $tags массив.

При set массив $tags будет перезаписывать значение, сохраненное в БД.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...