問題タブ [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.

0 投票する
4 に答える
28676 参照

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 に追加する予定です

質問:

  1. エンティティ内で EntityManager を使用することをお勧めしますか? いいえの場合、私の場合に外部 ID を取得する方法を説明してください。
  2. yaml ファイルを使用して Country と Mapping を関連付けることは可能でしょうか?

前もって感謝します!

0 投票する
4 に答える
43516 参照

sql - Doctrine2.0でUNIONを書く方法

Doctrine 2.0でこのSQLクエリを書く(そして結果をフェッチする)方法は?

0 投票する
3 に答える
9559 参照

php - Doctrine2の多対1の関連付けはJOINクエリを使用しません

エンティティとCar多対1の関係にあるエンティティがありますOwner。すべての車を選択すると、Doctrineはテーブルに対してCar1つのクエリを実行し、続いて車ごとOwnerにテーブルに対して1つのクエリを実行します。したがって、N台の車をフェッチすると、とテーブル間の単一のJOINクエリではなく、N+1クエリになります。CarOwner

私の実体は次のとおりです。

所有者と一緒に車をリストしたい場合は、次のようにします。

Doctrineが各車に対してクエリを発行するという事実を除けば、これはすべて非常にうまく機能します。

もちろん、クエリログは次のようになります。

fetch="EAGER"私が持っているかどうかfetch="LAZY"は関係ありません。2つのエンティティ間でJOINを使用してカスタムDQLクエリを実行して$car->getOwner()も、Doctrineはデータベースにクエリを実行します(EAGERを使用しない限り、$repo->findAll()すべてのエンティティが発生します)。

私はここで疲れすぎていますか?これはそれが機能するはずの方法です-またはDoctrineに代わりにJOINクエリを実行させる賢い方法はありますか?

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

php - Doctrine2 の名前付きスコープのアナログはありますか?

Doctrine2 には ActiveRecord の名前付きスコープに似た機能がありますか?

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

sql-order-by - doctrine 2 連想表による順序

以下に示すように、「ユーザー」と「属性」という 2 つのドクトリン エンティティがあります。すべてのユーザーを取得し、属性タイプ = x の属性名で並べ替えるクエリを作成する必要があります。たとえば、すべてのユーザーを取得して、'役職' で並べ替えます。

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

php - Doctrine2 は計算値を読み込めますか?

Doctrine2を使用して計算値をエンティティにロードする方法はありますか? たとえば、questionvotes(votesテーブルからの外部キーを持つquestionテーブル) を持っている場合、SQL を使用して を選択しquestion、投票合計を計算できます。

Doctrine2でそのようなことは可能ですか?

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

php - サブエンティティを使用したDoctrine2の多対多の関連付け

エンティティを介してHotelエンティティと多対多の関係を持つエンティティがありますAirportDistanсe

Distanceクラスへの関連付けを記述する方法がわかりません。

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

doctrine-orm - 教義2協会

私は2つの教義2エンティティを持っています:-国(id、名前)-マッピング(id、objectType、internalId、externalId)

次の条件を使用して、CountryとMappingを関連付ける必要があります:Country.id = Mapping.internalId AND Mapping.objectType ='country'

YAML / XMLマッピングを使用してこの関係を実装できますか?

0 投票する
5 に答える
3338 参照

php - Doctrine 2 ソート可能

顧客は必要に応じてアイテムの順序を変更する必要があります。つまり、各アイテムの実際の位置を保存するには、「順序」または「順序」列が必要です。

Doctrine 2を使用してこれを実装するにはどうすればよいですか?

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

doctrine - 教義2における多型の関連?

「ポリモーフィックアソシエーション」を使用するドクトリン2のコードの具体的なサンプルが必要です。はっきりさせておきます。コントラクトと呼ばれるエンティティがあり、コントラクトには多くの価格ルールを含めることができます。これらの価格ルールは、さまざまな種類のクラスであり、さまざまなテーブルに存在する可能性があります。これがポリモーフィックな関連付けとは何か、または私は間違っていると思いますか?

将来的には新しいタイプの価格ルールが存在する可能性がありますが、これらのルールをメインエンティティに関連付けて、別々のテーブルに表示するにはどうすればよいですか?

アップデート:

これは私の新しいコードです:

Contract.php

pricerule.php

discountrule.php

extradiscountrule.php

sampleusage.php

しかし、コントラクトに新しいルールを追加しようとすると、エラーメッセージが表示されます(致命的なエラー:キャッチされない例外'Doctrine \ ORM \ Mapping \MappingException'とメッセージ'ClassDoctrine \ Common \ Collections\ArrayCollectionは有効なエンティティまたはマップされたスーパークラスではありません。)

私は何を間違っているのですか?