欢迎。在Action(Expressive Zend + Doctrine)
中无法从存储库中调用其函数___________________
// App\Entity\Category
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Category
*
* @ORM\Table(name="category", indexes={@ORM\Index(name="id", columns={"id"})})
* @ORM\Entity(repositoryClass="App\Repository\CategoryRepository")
*/
class Category
{//}
___________________
// App\Repository\CategoryRepository
namespace App\Repository;
use Doctrine\ORM\EntityRepository;
class CategoryRepository extends EntityRepository
{
public function finderMethod($arguments){
// Какие-либо действия
return $arguments;
}
}
___________________
// App\Action\PageAction
$category = $this->em->getRepository('App\Entity\Category')-> ???
findAll(),findBy按预期工作,我做错了什么? (据我记得,在zf2中我有同样的问题)
答案 0 :(得分:0)
你得到了什么错误?你确定$ this-> em是实体经理的一个实例吗?虽然这不是必要的;尝试在App之前添加反斜杠:
<?php
$this->em->getRepository('\App\Entity\Category')->???
答案 1 :(得分:0)
要获取存储库,您可以使用完全限定的类名:
<?php
$categoryRepository = $this->em->getRepository(App\Entity\Category::class);