将我的查询生成器结果从我的 QuizRepository 获取到我的 QuizController
Get my querybuilder result from my QuizRepository to my QuizController
我在代码和 Symfony 方面都很新,我需要为我的测验做一个 <select>
,列出我所有的主题(类别)
所以在我的 QuizRepository 中我这样做了:
public function byTheme()
{
$qB = $this->createQueryBuilder('q')
->select('theme')
->distinct()
->getQuery()
->getResult()
;
}
但是现在,我如何将我的结果(这里 $qB
对吗?)调用到我的 QuizController
我试过了,但我确信这与我应该做的相去甚远:
$response = $this->forward('App\Repository\QuizRepository::select');
return $response
您首先需要 return 结果而不是将其存储在局部变量中:
public function byTheme()
{
return $this->createQueryBuilder('q')
->select('theme')
->distinct()
->getQuery()
->getResult()
;
}
之后您可以在您的控制器中调用该方法:
public function yourAction(QuizRepository $repository)
{
$quizzes = $repository->byTheme();
// ...
}
我在代码和 Symfony 方面都很新,我需要为我的测验做一个 <select>
,列出我所有的主题(类别)
所以在我的 QuizRepository 中我这样做了:
public function byTheme()
{
$qB = $this->createQueryBuilder('q')
->select('theme')
->distinct()
->getQuery()
->getResult()
;
}
但是现在,我如何将我的结果(这里 $qB
对吗?)调用到我的 QuizController
我试过了,但我确信这与我应该做的相去甚远:
$response = $this->forward('App\Repository\QuizRepository::select');
return $response
您首先需要 return 结果而不是将其存储在局部变量中:
public function byTheme()
{
return $this->createQueryBuilder('q')
->select('theme')
->distinct()
->getQuery()
->getResult()
;
}
之后您可以在您的控制器中调用该方法:
public function yourAction(QuizRepository $repository)
{
$quizzes = $repository->byTheme();
// ...
}