問題タブ [doctrine-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.
php - Symfony を使用したスタンドアロン PHP プロジェクトに使用する MongoDB ライブラリはどれですか?
私は、MongoDB がデータベースの正しい選択であると確信している新しいプロジェクトを率いています。アーキテクチャは SOA に決定したので、Web 部分は Symfony を使用して開発し、サービス部分は軽量な REST フレームワークTonicを使用して開発します。
さて、サービス部分では、MongoDB と通信します。そのために、Doctrine MongoDB ODM、Mondango、ActiveMongo、MongoRecordなど、利用可能な多数の MongoDB ライブラリを調べました。ただし、どれを使用するかはわかりません。選ぶ。
正しい選択ができるように、これらのライブラリでの経験を誰かが共有できるかどうか疑問に思っていました. ライブラリが持つべきと考えるプロパティの一部を次に示します。
- ドキュメントを定義するためのプレーンな PHP クラス (配列/構成ファイルの代わり)
- 参照のサポート
- 運用の効率化
- わかりやすいAPI
皆様のご意見をお待ちしております!
symfony - Symfony2 の Doctrine MongoDB ODM の複数フィールドに対する一意の制約
Symfony\Bundle\DoctrineMongoDBBundle\Validator\Constraints\Unique を見つけましたが、1 つのフィールドに対してのみ有効であるように見えます (この例ではhttp://symfony.com/doc/current/bundles/DoctrineMongoDBBundle/form.htmlとして見つかります)クラス注釈)。複数のフィールドでそのような検証を行うための簡単な解決策はありますか?
forms - Symfony2 mongodb バンドル ドキュメントの一対多フォーム
mongoDB ドキュメントで Symfony 2 のフォームを使用する際に問題があります。
タグへのリレーション oneToMany (参照) を持つ最初のドキュメント (投稿) を表すフォームを作成しようとしています。
関係は次のように宣言されます。
タグには ID と名前があります。
私はそれを機能させるために多くのことを試みました
フォームには選択肢が表示されますが、フォームが送信されると無効になり、このエラーが表示され続けます。
「フィールド "0"、"1"、"2" は予期されていませんでした」
私もこれを試しました:symfony2フォームの選択とmongodb
しかし、それの使用はちょっと混乱しています
アップデート
これは、投稿が送信された後に得られるものです:
これで、「フィールド「0」、「1」、「2」は予期されていませんでした」という理由がわかりましたが、Symfony がそれを処理しない理由がわかりません。
可能なバンドルを探してきましたが、何もありません
私のオブジェクトと関連するオブジェクトを水和させる素敵なフォームを作成する方法がわかりません。この問題の解決策や、これを解決するための他のアイデアを持っている人はいますか?
本当にありがとう !
doctrine - 複数のタイプを持つ Doctrine mongoDB ODM フィールド
整数値と文字列値を 1 つのフィールドに格納する必要があります。マッピングにはどのタイプを使用すればよいですか? 文字列を使用すると、mongo ドキュメントで整数値が文字列として取得されます。
zend-framework - ZF2 を Doctrine Mongo ODM と統合するには?
zf2 beta3 を doctrine mongo odm (https://github.com/doctrine/DoctrineMongoODMModule) と統合しようとしていますが、成功しません。
どのようにインストールして構成できますか?
git - DoctrineMongoORMModuleでgithubからの再帰的なサブモジュールの更新が失敗するのはなぜですか?
これは私が間違っていることですか、それともより広いバグですか?
空のディレクトリで次のgitコマンドを実行すると:
すべてがうまくいき、複数のサブモジュールがプルされ、次の出力で失敗します。
もう少し掘り下げました。問題の原因となっているサブモジュールの.gitファイルの内容は次のとおりです。
そのgitdirパスを確認しましたが、存在します。ただし、Windows XPマシンを使用しており、cmdプロンプトからこれを実行しようとすると、問題が発生します。
ディレクトリ変更文字列が長すぎるようです。2つに分割すると機能するためです。
アドバイスや助けをいただければ幸いです。乾杯。
php - Doctrine ODM MongoDB - Replicate a simple One to Many Reference with Constraint
I'm new to Doctrine, mongo and the ODM setup and while playing with this setup in ZF1 I'm trying to replicate a simple one to many reference with a constraint. Here is the situation and would like some advise on how to achieve this.
This is a simple user->role mapping, so in a sql situation I would have tables as follows:
Then a foreign key constraint would be set on the users role_id to map to the role id. And upon deleting a role a foreign key constraint would be triggered stopping the operation.
How could I achieve the same goal in Doctrines MongoDB ODM?
So far I have played with different types of annotations on the User entity including @ReferenceOne @ReferenceMany with different cascade options...
The choice left to me now is to implement @PreUpdate, @PreRemove lifecycle events on the 'role' entity and then check that no users are using the role, if they are then on update change the reference to match or on remove throw an exception.
Am I right here or lost ?
Thank you,
Si
mongodb - Doctrine ODM for MongoDB で独自の MongoId を設定するにはどうすればよいですか?
そしてコード
Doctrine が私のセット ID をオーバーライドするのはなぜですか? そして、これを防ぐ方法はありますか?
新しい ID はPersistenceBuilder::prepareInsertData
、ID が設定されているかどうかを確認するチェックで設定されていないことが示されている場合に設定されます。id フィールドが変更セットから除外されている理由がわかりません。
アップデート
もう少しコードを読んだところ、その理由if
はUnitOfWork::getDocumentActualData
.
else
IDに値が設定されていないため、値はありません。
これは開発者による意図的な設計上の選択ですか?
解決済み
これは、私が更新していない最近のコミットで更新されました。ただし、これが意図されているかどうかは完全にはわかりません。
https://github.com/doctrine/mongodb-odm/commit/fb2447c01cb8968255383ac5700f95b4327468a3#L2L503
mysql - Mongoid を MySQL に保存するか、MySQL レコード ID を mongo に保存しますか?
プロジェクトには、MySQL データベースがあります。Mongo の GridFS を使用して、各ソフトウェアのスクリーンショットを保存したいと考えています。
MySQL ソフトウェア ID を mongo ファイル コレクションに保存する必要があるのか、それとも mongo ID を MySQL テーブルに保存する必要があるのかがわかりません。つまり、テーブルのスクリーンショットには、software_id と mongo_id が含まれます。MongoID は、スクリーンショットのコレクションを指します。
Doctrine ORM と Doctrine ODM を並行して使用します。
何か案は?最善の解決策は何ですか?同期に関しては。問題が発生する可能性はありますか?
ありがとう