我有一个User
实体类,我在同一目录中创建UserRepository.php
以将自定义方法放入其中,但是当我在使用此语法的控制器中使用它时,它将无法工作:
我的存储库:
namespace Doobin\UserBundle\Entity;
use Doctrine\ORM\EntityRepository;
class UserRepository extends EntityRepository
{
public function pageAccess($User=1,$Page='_home')
{
$stmt="Somthing to test";
return $stmt;
}
}
我的控制器使用存储库:
use Doobin\UserBundle\Entity\User;
.
.
.
.
$em = $this->getDoctrine()->getManager();
$products = $em->getRepository('UserBundle:User')->pageAccess();
var_dump($products);
当我使用它时,它找不到pageAccess方法。
我应该在某处介绍存储库吗?因为tuturial本身没有说什么。
答案 0 :(得分:1)
在您的用户实体中,您应该在课程顶部添加注释:
/**
* User.
*
* @ORM\Table(name="my_user")
* @ORM\Entity(repositoryClass="UserRepository")
*/
class User
{
}