2012-05-17 36 views
0

我有以下情形:爲doctrine2實體生成自定義代理方法

用戶可能關注或被其他用戶關注。

用戶如下面的代碼所示

/** 
@var ArrayCollection $follows 

@ORM\ManyToMany(targetEntity="User", inversedBy="followers") 
@ORM\JoinTable(name="user_follows", 
     joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")}, 
     inverseJoinColumns={@ORM\JoinColumn(name="followed_user_id", referencedColumnName="id")} 
    ) 
*/ 
protected $follows; 

/** 
@var ArrayCollection $followers 

@ORM\ManyToMany(targetEntity="User", mappedBy="follows") 
*/ 
protected $followers; 

我想有一個名爲followersIDs集合場(不保存到數據庫),將根據需要進行填充(打電話時用多對多關係關聯$user->getFollowersIDs())只跟隨當前用戶的用戶的id(而不是整個實體)。

的一點是,用戶可以跟一個巨大的其他用戶的數量,我認爲這是毫無意義的,當我只需要他們的IDS一些快速檢查,以加載所有的用戶實體。 我不知道是否可以創建自定義代理方法來定義此自定義查詢邏輯或存在其他解決方案。

感謝您的建議。

回答

相關問題