Doctrine 2 には upsert 機能が組み込まれていますか? そうではないようですが、決定的なイエスまたはノーの答えを見つけることができませんでした.
もしそうなら、私はもちろん、例やドキュメントを見たいと思っています。
Doctrine 2 には upsert 機能が組み込まれていますか? そうではないようですが、決定的なイエスまたはノーの答えを見つけることができませんでした.
もしそうなら、私はもちろん、例やドキュメントを見たいと思っています。
私は答えを見つけたと思います。本日(2012年10月15日)現在、Doctrineの「アップサートサポートの追加」に関する未解決の問題があります。Doctrine 2がアップサートをサポートしていれば、このチケットはまだ開いていないと思いますので、私の決定的な答えがあると思います。
Upsert は Doctrine に既に存在します。
ドキュメントを返す場合は、クエリ ビルダーを使用してfindAndUpdate()とreturnNew( ) を設定する必要があります。upsert()を設定すれば準備完了です。
例えば:
$documentMannager->createQueryBuilder('App\Domain')
->findAndUpdate()
->returnNew()
->field('_id')->equals($id)
->field('page')->equals($page)
->field('count')->inc(1)
->upsert()
->getQuery()
->execute();
これは、バケット パターンを実装する方法です。