如何在Symfony 3.0中的FormType上注入容器?
我的services.yml文件:
services:
advertiser.form.report:
class: App\AdvertiserBundle\Form\ReportType
arguments: ["@service_container"]
Run Code Online (Sandbox Code Playgroud)
在动作控制器中:
$report = $this->get( 'advertiser.form.report' );
$form = $this->createForm( $report );
Run Code Online (Sandbox Code Playgroud)
我收到了这个错误:
给出了"string","App\AdvertiserBundle\Form\ReportType"类型的预期参数
正如评论中所述,修复很简单;你应该只做:
$form = $this->createForm(ReportType::class);
Run Code Online (Sandbox Code Playgroud)
无论如何,我强烈建议您不要在任何类型的类中注入整个容器。最好只注入所需的服务。
| 归档时间: |
|
| 查看次数: |
866 次 |
| 最近记录: |