問題タブ [doctrine-orm]
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.
entitymanager - Doctrine 2.0 エンティティ内で EntityManager を使用する
Country (id, name) と Mapping (id, object, internalId, externalId) の 2 つのエンティティがあります。Country と Mapping は関連付けで接続されていません (Mapping には国以外の行があるため)。次の条件を使用して、国の外部 ID を取得する必要があります。
country.id = mapping.internalId
mapping.object = 'country'
そこで、関数 getExternalId() を Country に追加する予定です
質問:
- エンティティ内で EntityManager を使用することをお勧めしますか? いいえの場合、私の場合に外部 ID を取得する方法を説明してください。
- yaml ファイルを使用して Country と Mapping を関連付けることは可能でしょうか?
前もって感謝します!
sql - Doctrine2.0でUNIONを書く方法
Doctrine 2.0でこのSQLクエリを書く(そして結果をフェッチする)方法は?
php - Doctrine2の多対1の関連付けはJOINクエリを使用しません
エンティティとCar
多対1の関係にあるエンティティがありますOwner
。すべての車を選択すると、Doctrineはテーブルに対してCar
1つのクエリを実行し、続いて車ごとOwner
にテーブルに対して1つのクエリを実行します。したがって、N台の車をフェッチすると、とテーブル間の単一のJOINクエリではなく、N+1クエリになります。Car
Owner
私の実体は次のとおりです。
所有者と一緒に車をリストしたい場合は、次のようにします。
Doctrineが各車に対してクエリを発行するという事実を除けば、これはすべて非常にうまく機能します。
もちろん、クエリログは次のようになります。
fetch="EAGER"
私が持っているかどうかfetch="LAZY"
は関係ありません。2つのエンティティ間でJOINを使用してカスタムDQLクエリを実行して$car->getOwner()
も、Doctrineはデータベースにクエリを実行します(EAGERを使用しない限り、$repo->findAll()
すべてのエンティティが発生します)。
私はここで疲れすぎていますか?これはそれが機能するはずの方法です-またはDoctrineに代わりにJOINクエリを実行させる賢い方法はありますか?
php - Doctrine2 の名前付きスコープのアナログはありますか?
Doctrine2 には ActiveRecord の名前付きスコープに似た機能がありますか?
sql-order-by - doctrine 2 連想表による順序
以下に示すように、「ユーザー」と「属性」という 2 つのドクトリン エンティティがあります。すべてのユーザーを取得し、属性タイプ = x の属性名で並べ替えるクエリを作成する必要があります。たとえば、すべてのユーザーを取得して、'役職' で並べ替えます。
php - Doctrine2 は計算値を読み込めますか?
Doctrine2を使用して計算値をエンティティにロードする方法はありますか? たとえば、question
がvotes
(votes
テーブルからの外部キーを持つquestion
テーブル) を持っている場合、SQL を使用して を選択しquestion
、投票合計を計算できます。
Doctrine2でそのようなことは可能ですか?
php - サブエンティティを使用したDoctrine2の多対多の関連付け
エンティティを介してHotel
エンティティと多対多の関係を持つエンティティがありますAirport
Distanсe
Distance
クラスへの関連付けを記述する方法がわかりません。
doctrine-orm - 教義2協会
私は2つの教義2エンティティを持っています:-国(id、名前)-マッピング(id、objectType、internalId、externalId)
次の条件を使用して、CountryとMappingを関連付ける必要があります:Country.id = Mapping.internalId AND Mapping.objectType ='country'
YAML / XMLマッピングを使用してこの関係を実装できますか?
php - Doctrine 2 ソート可能
顧客は必要に応じてアイテムの順序を変更する必要があります。つまり、各アイテムの実際の位置を保存するには、「順序」または「順序」列が必要です。
Doctrine 2を使用してこれを実装するにはどうすればよいですか?
doctrine - 教義2における多型の関連?
「ポリモーフィックアソシエーション」を使用するドクトリン2のコードの具体的なサンプルが必要です。はっきりさせておきます。コントラクトと呼ばれるエンティティがあり、コントラクトには多くの価格ルールを含めることができます。これらの価格ルールは、さまざまな種類のクラスであり、さまざまなテーブルに存在する可能性があります。これがポリモーフィックな関連付けとは何か、または私は間違っていると思いますか?
将来的には新しいタイプの価格ルールが存在する可能性がありますが、これらのルールをメインエンティティに関連付けて、別々のテーブルに表示するにはどうすればよいですか?
アップデート:
これは私の新しいコードです:
Contract.php
pricerule.php
discountrule.php
extradiscountrule.php
sampleusage.php
しかし、コントラクトに新しいルールを追加しようとすると、エラーメッセージが表示されます(致命的なエラー:キャッチされない例外'Doctrine \ ORM \ Mapping \MappingException'とメッセージ'ClassDoctrine \ Common \ Collections\ArrayCollectionは有効なエンティティまたはマップされたスーパークラスではありません。)
私は何を間違っているのですか?