我知道條件過濾器尚不可用於查詢(按照「26.1.4。在Doctrine2手冊的已知限制」部分中應用過濾規則),所以我想問專家他們對以下問題的首選解決方案是:原則加入過濾器
我的網站有產品對象,每個對象都有很多評論。評論有一個狀態欄。我不希望在Doctrine2非常出色地完成自動關聯期間不必要地提交未經批准的評論。
我目前的解決方案/黑客是一個鑑別使用單表繼承(STI)的「狀態」,並有根據「認可」
我要補充一點,我的狀態的ApprovedProductReview擴展ProductReview類我目前只需撥打
$em->find('Entities\Product', $pid);
以獲得我的產品,Doctrine2自動執行所有關聯。我應該通過提供DQL查詢來實例化產品嗎?
我會怎樣真的像是一種重寫Doctrine2基於註釋提供的魔法,並且簡單地能夠使用DQL來懶惰地獲得正確的評論子集。
對此提出建議?
我以前的解決方案是'過濾器()''的使用ArrayCollection'封閉按照使用說明書正確設置,但我覺得這是浪費 - 檢索所有額外的數據只是在PHP端進行過濾。 – iamdev 2011-04-19 03:26:55