私は私のプロジェクトで定義されたシンプルなエンティティの構造を有する:抽出データ
国>地域>地方>タウン、次のように定義された
:
class Town
{
/**
* @Id @Column(type="integer")
* @GeneratedValue(strategy="AUTO")
*/
private $id;
/** @Column(type="string", length=30,unique=FALSE) */
private $townname;
/** @Column(type="boolean") */
private $active;
// so that we know when a user has added a town
/** @Column(type="boolean") */
private $verified;
/**
* @ManyToOne(targetEntity="Province")
* @JoinColumn(name="provinces_id", referencedColumnName="id",nullable=FALSE)
*/
private $provinces_id;
を
OK。あなたはその考えを得る。
ユーザーが町を持つ場合(多対1)、そのユーザーの地域、地域、国を知りたいと思います。私はSQLやDQLを使ってこのデータを提供する町のエンティティのためのリポジトリメソッドを作ることができました。ような何か:
SELECT `users`.`towns_id`,`towns`.`provinces_id`,`regions`.`countries_id`,`provinces`.`regions_id` FROM users , `regions`
LEFT JOIN `towns` ON `users`.`towns_id` = `towns`.`id`
LEFT JOIN `provinces` ON `towns`.`provinces_id` = `provinces`.`id`
しかし、これは教義はすでに町、州、地域や国エンティティ間の関係について、「知っている」、特に以来、間違っているようです。
これを行う簡単な方法はありますか?最後に