問題タブ [odm]

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 投票する
1 に答える
132 参照

php - Doctrine では、property.$.otherProperty のようなドット構文でドル記号は何を意味しますか?

Doctrine では、property.$.otherProperty のようなドット構文でドル記号は何を意味しますか?

/Doctrine/ODM/MongoDB/Tests/Query に、興味深い queryBuilder 引数 field('phonenumbers.$.phonenumber') があることに気付きました。User クラスでは、「phonenumbers」はクラス Phonenumber の @embeddedDocument であり、クラス Phonenumber、「phonenumber」は @string です。私の質問は...これは何ですか.$. 構文はすべてですか?

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

mongodb - Symfony2 Mongodb : オブジェクトを別の場所に保存する

私は Symfony2 を mongodb と doctrine-odm で使用していますが、これらは奇妙な動作をしています。importFile ドキュメントとコンテキスト ドキュメントがあります。contexte ドキュメントは、以下のように importFile に参照されます。

(ゲッターとセッターは問題ありません)。

私のコンテキスト ドキュメントは既に存在し、セッションに存在します。コンテキスト オブジェクトをダンプすると、必要なすべてのオブジェクト情報、ID、およびすべてのプロパティが得られます。

私のコントローラーでは、この contexte オブジェクトを importFile one に保存したいと思います:

それは非常にシンプルに見え、そのように動作するはずですが、フラッシュ時にmongodbエラーが発生します:

識別子なしで DBRef を作成することはできません。UnitOfWork::getDocumentIdentifier() はクラス Contexte の識別子を返しませんでした

私は何が間違っているのか分かりません。助けはありますか?

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

php - Doctrine ODM : PersistentCollection::toArray は空の配列を返します

メイン ドキュメントのフィールドの定義は次のとおりです。

主なドキュメントのリストを取得して、JMS シリアライザー経由でシリアル化しようとしましたが、参照が空の配列であることがわかりました。調査の結果、getReferences の場合、documents がPersistentCollectionのインスタンスを返すことがわかりました。

  • count は 2 を返します [ok]
  • getMongoData は MongoIds の配列を返します [ok]
  • toArray が空の配列を返す [無効]

mongoData をクリアするinitializeメソッドが原因のようです。

次のコードで適切な結果を達成しました。

しかし、それは単なる近道であり、適切な解決策だとは思いません。

PersistentCollection を使用してこれらの ID またはドキュメント全体を取得する方法と、初期化メソッドが mongoData をクリアする理由を誰かが知っている場合は?

ありがとう。

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

mongodb - Doctrine ODM(MongoDB) - 今日作成されたデータを削除する

私はドクトリンODMで働いています。私はドクトリンが初めてです..実際には、今日クエリビルダーを使用してすべて挿入されたコレクションからすべてのデータを削除しようとしています。しかし、私はそれを行うことができません。これについて私を助けてください。私が使用しようとしているクエリビルダーは以下のとおりです。

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

php - Doctrine-ODM (MongoDB) - FindByMultipleIDs

Doctrine ODM(MongoDB)を使用しています。ID が (1,2,3) のデータを取得するために doctrine odm クエリ ビルダーを作成しようとしています。しかし、私はそれを得ることができません。これについて私を助けてください。

以下のような通常のSQLクエリ用のodmクエリビルダーを作成したいのですが、

次のようなデフォルト機能がないことを願っていますfindByID()

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

mongodb - Doctrine 2 ODM MongoDB による俊敏性

API からエンティティを取得すると、エラーが発生しました:

PHP 致命的なエラー: 行 442 の /Sites/system.local/vendor/zfcampus/zf-apigility-doctrine/src/Server/Resource/DoctrineResource.php の非オブジェクトに対するメンバー関数 createQuery() の呼び出し

DoctrineResource.php (442 行目の関数 - fetchAll):

私のcomposer.json:

私のmodule.config.php:

助けてください。ありがとうございました!

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

mongodb - Doctrine ODM を使用してフィールド タイプを変更する

以前は文字列を格納するフィールドを持っていたドキュメントがありますが、今はハッシュを格納するように変更したいと考えています。問題は、古いドキュメントのいずれかを取得しようとすると、次のエラーが発生することです。

キャッチ可能な致命的なエラー: Doctrine\ODM\MongoDB\UnitOfWork::getClassNameForAssociation() に渡される引数 2 は、/vagrant/wowfi/app/cache/dev/doctrine/odm/mongodb/Hydrators で呼び出される、指定された文字列の配列型である必要があります/WowfiCoreBundleDocumentLoginUserHydrator.php 82 行目および定義済み

さまざまな種類のドキュメントを保存する場合は、ディスクリミネーターを使用する必要があるというドキュメントを読みました。しかし、私の場合、2 つの異なるクラスはありません。フィールド タイプを文字列からハッシュ (埋め込みドキュメント) に変更したドキュメント クラスが 1 つだけあります。

ご協力いただきありがとうございます。

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

php - ReferenceMany が動作しない Doctrine ODM

こんにちはeveryBody私は実際にdoctrine(Symfony2プロジェクト)に問題があるので、実際には「Category」ドキュメントのタグである「$ ref」タグを参照するドキュメント「Question」がありますが、理解できないエラーが発生しています. ドクトリンのドキュメントを検索しましたが、解決策が見つかりませんでした。コードは次のとおりです。

そして、私はこのエラーが発生しています: