请问我如何在symfony4.2中使用AbstractController以及如何在contruct Controller中注入服务?
nameSpace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
class homeController extends AbstractController
{
/**
* @return Response
* @Route("/home", name="home")
*/
public function index():Response
{
return $this->render('pages/home.html.twig');
}
}
如何在控制器的构造函数中注入服务?
答案 0 :(得分:0)
您应将所需的服务指定为Controller构造函数参数。然后将服务分配给您的控制器参数。 例如:
public function construct(StringValidator $stringValidator)
{
$this->stringValidator = $stringValidator;
}
不要忘记在参数中声明$ stringValidator,并指定所需的Service名称空间!如果您的autowiring
中启用了services.yaml
,则您甚至无需手动传递Service参数。
就这样。您可以立即使用服务。