2012-11-08 64 views
1

我使用SF2.1与Doctrine2Doctrine2在实体中查询

我有2个实体:Category和Article,与oneToMany关系链接。

我要检索特定类别的所有文章,但只有那些公布....

我告诉你我的那一刻做:

// in /Entity/category.php : 
public function getAllArticlesPublished(){ 
    $articles = array(); 
    foreach($this->getArticles() as $article){ 
     if($article->isPublished()) $articles[] = $article; 
    } 
    return $articles; 
} 

这是好办法去做吧 ?解析整个文章数组并不好看......但我不想在存储库中这样做,因为它涉及特定的类别。

对我有什么提示?

回答

0

您可以查看Filtering Collections。如果它不能解决你的问题,那么一个仓库就是这样的东西的最佳场所。

+0

正是我所需要的,thx! –

+0

我必须问一些更多...如果我的关系有一个外国表:_Article - ArticleCategory - Category_我仍然可以使用标准来获取发布的所有类别A的文章? (已发布属于文章实体),我看到的标准中没有加入 –