Hi I'm trying to share models between my modules, but when I call my getServiceLocator()->get('Mail\Model\Mail') in my controller from another module the class cannot be found.
I'm searching for a solution for a few days now, but I can't find one thats working for me.
public function getServiceConfig()
{
return array(
'factories' => array(
'Mail\Model\Mail' => function($sm) {
$mail = new Mail();
return $mail;
},
'Mail\Model\MailTable' => function($sm) {
$tableGateway = $sm->get('MailTableGateway');
$table = new MailTable($tableGateway);
return $table;
},
'MailTableGateway' => function($sm) {
$dbAdapter = $sm->get('Zend\Db\Adapter\Adapter');
$resultSetPrototype = new ResultSet();
$resultSetPrototype->setArrayObjectPrototype(new Mail());
return new TableGateway('mail', $dbAdapter, null, $resultSetPrototype);
}
)
);
}
When I return a string instead it's working fine so the I know I'm calling the right key, but when I try to return my class it can't be found.
In my mail module the class is working fine.. If you need more information please let me know.
Thanks in advance!