Extbase FindBy m:m relation (Categories)
//in Repository
/**
* Findby Categories
*
* @param type $categories
* @return type
*/
public function findByCategories($categories) {
$query = $this->createQuery();
foreach ($categories as $category) {
$constraint[] = $query->contains('category', $category);
}
$result = $query->matching($query->logicalAnd($query->logicalAnd($constraint)))->execute();
if (count($result) > 0) {
return $result;
}
}
//in Controller
//Find items by Categories
$itemByCat = $this->yourRepository->findByCategories($item->getCategory());
$this->view->assign('itemsbycategories', $itemByCat);