내 응용 프로그램은 데이터 매퍼 패턴을 사용하므로 데이터베이스 어댑터의 인스턴스가 필요한 여러 매퍼 클래스가 있습니다. 그래서 내 서비스 설정의 factories
부분은 다음과 같은 항목으로 가득 :맞춤 서비스 탐지기로 서비스 구성 중복을 줄입니까?
'UserMapper' => function($sm) {
$mapper = new UserMapper();
$adapter = $sm->get('Zend\Db\Adapter\Adapter');
$mapper->setAdapter($adapter);
return $mapper;
},
'GroupMapper' => function($sm) {
$mapper = new GroupMapper();
$adapter = $sm->get('Zend\Db\Adapter\Adapter');
$mapper->setAdapter($adapter);
return $mapper;
},
내가이 보일러 플레이트 코드의 일부를 제거하고 싶습니다. 정의가 일부 사용자 정의 팩토리 구성과 함께 존재하지 않는 한, DB 어댑터를 suppliyng하여 모든 매퍼 클래스를 인스턴스화 할 수있는 이러한 매퍼에 대해 사용자 정의 서비스 로케이터 클래스를 정의 할 수 있습니까?
고마워요! 두 가지 옵션을 추가로 살펴 보겠습니다. –