私は自分の問題を説明しようとします。まもなく、私はアドレステーブル、部屋のテーブル、建物のテーブルとユーザーのテーブルを持っています。住所表は、ID、建物、ユーザーの住所を保持できる必要があります。私は直接アソシエーションマッピングを使うことができないので、私は継承マッピングが必要です。私はこれを継承マッピングの問題がよくないことを明らかにする。私の解決策は、部屋、建物、ユーザー(クラス名も含む)のIDを保持する別名テーブルを作成し、アドレステーブルがこの別名テーブルと直接対話できるようにすることです。だからSQLスタイルでこれはエイリアスに参加し、ユーザーはアドレステーブルに参加してユーザーのアドレスを検索します。しかし、どのマッピングスタイルが適合するかを判断することはできませんでした。あなたは私にそれについていくつかのアドバイスをして、それがなぜそんなに簡単な説明をしてくれますか?おかげさまで Doctrine 2継承マッピング戦略アドバイスが必要
0
A
答えて
0
は、私はそれ
/**
* @orm:Table(name="rooms")
* @orm:Entity
*/
class Room {
....
/**
* @orm:InheritanceType("JOINED")
* @orm:OneToOne(targetEntity="Building")
* @orm:JoinColumn(name="bid", referencedColumnName="id", onDelete="CASCADE", nullable=false)
*/
private $building;
....
}
/**
* @orm:Table(name="Buildings")
* @orm:Entity
*/
class Building {
....
/**
* @orm:InheritanceType("JOINED")
* @orm:OneToOne(targetEntity="Address")
* @orm:JoinColumn(name="aid", referencedColumnName="id", onDelete="CASCADE", nullable=false)
*/
private $address;
....
}
/**
* @orm:Table(name="rooms")
* @orm:Entity
*/
class Address {
....
/**
* @orm:InheritanceType("JOINED")
* @orm:OneToOne(targetEntity="User")
* @orm:JoinColumn(name="uid", referencedColumnName="id", onDelete="CASCADE", nullable=false)
*/
private $user;
....
}
/**
* @orm:Table(name="users")
* @orm:Entity
*/
class User {
....
}
@orm:
ため
users address buildings rooms
とコードを(部屋の建物を持っている建物がアドレスを持っている、アドレスを所有することができ、ユーザ)あなたは、私がこのような構造を仮定
のような関係を使用することをお勧めsymfonyでdoctrineを使用する場合の必要性
関連する問題
- 1. 従来のアプリケーション移行戦略 - 戦略に必要なアドバイス
- 2. 2つの異なるサブクラスが同じエンティティインスタンスを継承するときのDoctrine継承戦略
- 3. JPA JOINED戦略による継承
- 4. 継承戦略の選択 - ハイバーネート
- 5. Symfony 2 + Doctrine 2 +継承
- 6. Java継承設計のアイデア - アドバイスが必要です
- 7. PHP Doctrine継承
- 8. JPAでSINGLE_TABLE戦略を継承し、ゲッターで@Discriminatorを継承する
- 9. ASP.NETアプリケーションのインストール - 戦略が必要
- 10. Doctrine 2 - クラステーブルの継承マッピングクラスの継承マッピングストラテジー
- 11. 継承 - ガイダンスが必要
- 12. Javaのベース2コードクエリの戦略が必要
- 13. Doctrine継承のパフォーマンス
- 14. ドクトリン継承マッピング
- 15. ServiceStack.OrmLite継承マッピング
- 16. 私は使用するためのマッピング戦略を指導が必要です
- 17. ベストActiveRecordの継承抽象クラスのための戦略とサブクラス
- 18. テストライティング戦略に関するアドバイス
- 19. 効率的なTFSブランチング戦略のアドバイス
- 20. 春ブートアプリケーションのテスト戦略のアドバイス
- 21. OOPと継承のアドバイスは
- 22. Automapper 5.1.1継承マッピング
- 23. Fluent NHibernateマッピング継承
- 24. HibernateマッピングOneToMany +継承
- 25. doctrine doctrineエンティティを継承するphpクラス
- 26. Doctrine 2のネーミング戦略を構成する方法
- 27. Node.js必要なプロトタイプ継承
- 28. Doctrineの継承とユーザータイプ
- 29. Datanucleusスキーマ生成で "継承戦略="指示が無視される
- 30. 継承とコンストラクタコードで支援が必要
ありがとうございますが、この構造体に継承はありません。それは1対1の結合です構造。私はDiscriminator Columnsが必要なので、私のニーズに合ったものがClass Table Inheritanceであることが分かったと思います。コーディングが終わったら、ここにコードを投稿します。 – ufucuk