0

我有一个创建对象的工厂。

Abbruchprotokoll::class => factory(function(ContainerInterface $c){
    return new Abbruchprotokoll($c->get(Request::class)->getRouterParam('stts-id'), $c->get(MySQL::class));
})

工厂正在使用字符串和依赖注入(MySQL 类)创建该对象。在我的Abbruchprotokoll::class我有一个注入注释:

/**
 * @Inject
 * @var \Smarty
 */
protected $smarty;

问题是,这个注入注释没有解决。我想这是因为我在上FactoryResolver并且没有injectMethodsAndProperties()喜欢ObjectCreator

我可以以其他方式将注入注释与工厂一起使用吗?

4

1 回答 1

2

您不能将注释与工厂一起使用,您需要改为使用autowire(Abbruchprotokoll::class)autowire()要求自动装配类,从而解决注释。

于 2018-07-22T16:40:20.093 回答