0
我正尝试使用Sonata Admin Bundle
创建自定义批处理操作,该操作会发送电子邮件。Sonata Admin - 访问邮件程序
问题是,我不知道如何访问swiftmailer。我有以下几点:
public function batchActionSend(ProxyQueryInterface $selectedModelQuery)
{
if($this->admin->isGranted('EDIT')=== false) {
throw new AccessDeniedException();
}
$request = $this->get('request');
$modelManager = $this->admin->getModelManager();
$selectedModels = $selectedModelQuery->execute();
try {
foreach ($selectedModels as $selectedModel) {
// send the email here?
$selectedModel->send();
$modelManager->update($selectedModel);
}
} catch (\Exception $e) {
$this->get('session')->getFlashBag()->add('sonata_flash_error', $e->getMessage());
return new RedirectResponse($this->admin->generateUrl('list',$this->admin->getFilterParameters()));
}
$this->get('session')->getFlashBag()->add('sonata_flash_success', sprintf('The selected requests have been sent'));
return new RedirectResponse($this->admin->generateUrl('list',$this->admin->getFilterParameters()));
在我的实体我有以下几点:
public function send()
{
// send email here?
}
什么是访问邮件的最佳方式?通过管理员类别或通过实体或通过服务?
感谢