Php Symfony2自定义存储库类
我是symfony2的新手,我正在尝试创建自定义存储库类,但无法做到这一点 以下是我正在做的:Php Symfony2自定义存储库类,php,symfony,doctrine-orm,repository,entity,Php,Symfony,Doctrine Orm,Repository,Entity,我是symfony2的新手,我正在尝试创建自定义存储库类,但无法做到这一点 以下是我正在做的: 我向实体类(MobilePhone)添加了注释 @ORM\Entity(repositoryClass=“Maak\DefaultBundle\Entity\MobilePhonesRepository”) 在MobilePhonesRepository中,我创建了名为findAllMobilePhones()的自定义函数 在控制器中,我使用以下命令调用函数: $em->getReposito
- 我向实体类(MobilePhone)添加了注释
- 在MobilePhonesRepository中,我创建了名为
findAllMobilePhones()的自定义函数
- 在控制器中,我使用以下命令调用函数:
未定义的方法findAllMobilePhones()
,我已经清除了缓存并尝试了相同的错误。怎么了
我的存储库类:
<?php
namespace Maak\DefaultBundle\Entity;
use Doctrine\ORM\EntityRepository;
class MobilePhonesRepository extends EntityRepository
{
public function findAllMobilePhones()
{
return $this->getEntityManager()->createQuery('SELECT p FROM AcmeStoreBundle:Product p ORDER BY p.name ASC') ->getResult();
}
}
感谢大家抽出时间。我终于找到了问题所在
我决定调试整个项目,发现XMLDriver中没有设置存储库类
,而要在元数据中设置customRepositoryName
。这是因为我使用的是XML映射,而对于这个实体,我使用注释提供了repositoryClass
再次感谢:)echo得到什么类($em->getRepository('MaakDefaultBundle:MobilePhones'))
返回?您还可以为MobilePhonesRepository提供类文件吗?它返回条令\ORM\entityrepository这实际上与条令2相关,因此您应该用doctrine2
标记您的问题,以获得最大曝光率。您还可以将存储库代码放入问题中,以便易于阅读。您是否100%确定已清除元数据缓存?您的注释看起来不错,如果在元数据中设置了customRepositoryName
,如果无法正确实例化,则会出现异常。如果它仍然不工作,请在第750行中放置一个var\u dump($metadata)
,并向我们显示输出。