問題タブ [doctrine-mongodb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
928 参照

mongodb - Doctrine MongoDB を使用して、識別されたコレクションを ID でクエリする

Doctrine MongoDB を使用して ObjectId のみを知っているオブジェクトを照会するにはどうすればよいですか? ID によるクエリを使用$dm->findOneBy(array('id' => $id))すると、識別されたドキュメント タイプの 1 つの結果のみが返されますが、その他のドキュメント タイプは返されません。コマンド ライン経由でクエリを実行すると、たとえばdb.documents.find({ "_id": ObjectId(...) });、期待される行が返されます。

編集:問題は、クエリしているドキュメントのタイプがわからず、カスタム リポジトリを使用している場合、使用されるドキュメント名が、 2 つのドキュメント クラス (したがって、他の種類のドキュメントでは 0 の結果が返されます)。探しているドキュメントの種類がわからない場合、Doctrine はどのようにすればよいのでしょうか? 識別されたコレクションが与えられた場合、教義を明示的に伝えずに、リポジトリで正しいドキュメント名を自動的に使用する方法はありますか?

問題の抽象化については、以下を参照してください。

ありがとう!


私は、同じ文書コレクション内に、type分野によって識別された、識別された一連の文書を持っています。

Documentとクラスの両方のマッピングはVideo次のようになります。

0 投票する
1 に答える
1194 参照

php - doctrine mongo クエリで値をインクリメントできません

例を見る: http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/query-builder-api.html

単純なインクリメントを行うことができません。つまり、「投票」の価値は決して変わりません。ドキュメント ID ($postID) は正しく、ドキュメントを取得できます。インクリメントできないだけです。Mongo のドキュメントはなぜそんなにおかしくなっているのですか??

0 投票する
2 に答える
5784 参照

php - Composerを使用してdoctrine/mongodb-odmをインストールできません

Composerを介してdoctrine/mongodb-odmをインストールしようとすると、次のようになります。

ただし、次のphp -mようになります。

そしてcomposer.phar show --platform持っている:

何か案は?拡張機能は間違いなく正しくインストールされており、Composerにはそれもリストされています。バージョン(> = 12.12、<1.4-dev)も要件を満たしています。

0 投票する
1 に答える
1144 参照

mongodb - symfony2 + doctrine で実行時に MongoDB コレクションを変更する

私は Symfony2 MongoDB + Doctrine を使用しています。オブジェクトを定義するクラスの名前とは異なる名前のコレクションにオブジェクトを保存するように doctrine に指示したいと考えています。また、新しいコレクションの名前は、別のコレクション内のオブジェクトの ID にする必要があります。たとえば、Posts というクラスがあり、元の User コレクション内のユーザーの ID にちなんで名付けられたコレクションにそれらを保存したいと考えています。つまり、すべての新しい投稿を User555 という名前のコレクションに保存するように doctrine に指示する必要があり、このコレクションを作成して実行時にそこに保存するように doctrine に指示できるはずです。

次のようにファイルで構成することで、コレクションの名前を静的に変更できることがわかります:別のコレクションにドキュメントを保存する - Mongodb with symfony2

しかし、実行時にコレクションを作成できる必要があります。

誰かが私を正しい方向に向けてくれてありがとう!

乾杯。

0 投票する
1 に答える
155 参照

forms - symfony2でformbuilderを使用して別のドキュメントを参照するフォームフィールドを作成するには?

私のドキュメントには、同じクラス Category を参照するカテゴリ メンバー属性があります。

フォーム内parentで選択ドロップダウンフィールドを作成し、その中にすべてのカテゴリを表示したい

parentすべてのカテゴリをドロップダウンに表示し、そのドロップダウン フィールドをマップして、フォームが送信されたときにフィールドに親フィールドのオブジェクト ID が含ま れるようにするにはどうすればよいですか

0 投票する
1 に答える
2661 参照

mongodb - Symfony2 と MongoDB の注釈 / マッピングが認識されない

クックブックに記載されている手順に従いまし。しかし、私が実行したとき、doctrine:mapping:infoまたはdoctrine:generate:entities教義は私のファイルを無視します。

これがコードです。誰かがアドバイスを持っているかもしれません。

autoload.php

composer.json

config.yml:

実在物:

0 投票する
0 に答える
563 参照

symfony - クラスは有効なドキュメントまたはマップされたスーパー クラスではありません

そのため、CalendarBundle のフォーク ( http://github.com/permanaj/CalendarBundle ) を使用し、インストール、構成、および拡張を行います。これは通常、バンドルを使用する方法であるためです。しかし、コマンドを実行しようとすると、エラーが返されます:

親の CalendarBundle Document を拡張する Document を既に作成していますが、それでも同じエラーが返されます。親ドキュメントも @MongoDB アノテーションを使用する必要がありますか? それとも子ドキュメントだけですか?この問題を解決するにはどうすればよいですか?