我将 Symfony 5 与 Mailer(不是 Swiftmail)一起使用,我的应用程序中有一个工作申请表,用户可以在其中上传文件,然后我想通过电子邮件向自己发送工作申请,包括不保存文件的文件,如果可能的话.. . 我只找到函数attachFromPath() 或attach(),但我想避免保存文件。
有人会知道吗?
我的表单文件中有这个:
$builder
->add('lastname', TextType::class, [
'label' => 'Nom',
])
->add('firstname', TextType::class, [
'label' => 'Prénom',
])
->add('mail', EmailType::class, [
'label' => 'Email',
])
->add('files', FileType::class, [
'multiple' => true,
'constraints' => [
new File([
'maxSize' => '2048k',
'mimeTypes' => [
'application/pdf',
'application/x-pdf',
],
'mimeTypesMessage' => 'Merci de téleverser un PDF document, 2mo max.',
])
],
])
->add('message', TextareaType::class, [
'label' => 'Votre message',
])
->add('Postulez', SubmitType::class)
这在我的控制器中:
$form = $this->createForm(JobApplicationContactFormType::class);
$jobForm = $form->handleRequest($request);
if($form->isSubmitted() && $form->isValid()){
$jobEmail = (new TemplatedEmail())
->from($jobForm->get('mail')->getData())
->to('blabla@aol.fr')
->subject('Vous avez reçu une candidature d\'un contact du site')
->htmlTemplate('emails/jobEmail.html.twig')
->context([
'lastname' => $jobForm->get('lastname')->getData(),
'firstname' => $jobForm->get('firstname')->getData(),
'area' => $jobForm->get('area')->getData(),
'mail' => $jobForm->get('mail')->getData(),
'message' => $jobForm->get('message')->getData(),
'files' => $jobForm->get('files')->getData()
]);
$mailer->send($jobEmail);
$this->addFlash('message', 'Votre e-mail a bien été envoyé');
}