我是对的学说ORM新的,所以我努力学习的PS教程部分://knpuniversity.com/screencast/doctrine-queries/dql,但我仍然感到困惑的EXP:doctrine entityrepository如何工作?
SRC /AppBundle/Entity/Category.php
class Category
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=255)
*/
private $name;
/**
* @var string
*
* @ORM\Column(name="iconKey", type="string", length=20)
*/
private $iconKey;
/**
* @ORM\OneToMany(targetEntity="FortuneCookie", mappedBy="category")
*/
private $fortuneCookies;
01访问构建方法我们可以通过
但如果我们想进入新的方法,我们可以为存储库这样做
$categoryRepository = $this->getDoctrine()
->getManager()
->getRepository('AppBundle:Category');
$categories = $categoryRepository->findAllOrdered();
然后提供一流
的src /的appbundle /实体/ CategoryRepository.php
class CategoryRepository extends EntityRepository
{
public function findAllOrdered()
{
die('this query will blow your mind...');
}
}
我还是不明白!
$categoryRepository = $this->getDoctrine()
->getManager()
->getRepository('AppBundle:Category');
如果上述点类别的实体,怎么就突然可以链接到CategoryRepository,我们可以访问findAllOrdered()方法?我错过了什么人请帮助?
你缺少其中的类别实体链接到您的自定义类别库中的一部分。 @AlbertoFecchi - 错误和误导。版本库前缀与任何内容无关。 https://symfony.com/doc/current/doctrine/repository.html – Cerad
谢谢@Cerad现在我明白了逻辑/ ** * @ORM \ Entity(repositoryClass =“AppBundle \ Repository \ ProductCategory”) */ 班级类别 – kristyan