J'ai essayé d'envoyer des fichiers dans le courrier en utilisant Django EmailMessage
classeDjango envoyez un email avec Attachement
L'attachement des fichiers que je veux envoyer sont DB, fournies par chaque utilisateur lors de l'inscription sur mon site.
I'have a essayé cela, mais il ne fonctionne pas
myapp/views.py:
from django.core.mail import EmailMessage
def contactUber(request,id):
user = User.objects.get(id=id)
msg = EmailMessage(
'Hello', #subject
'Body goes here', #content
'[email protected]', #from
['[email protected]'] #to
)
msg.attach_file(user.profile.id_card.url) #the file that i want to attach
msg.send()
messages.success(request, "Email envoyé avec succes") #success msg
return redirect(user_detail, id=str(id))
myapp/modèles:
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
birth_date = models.DateField(('Date de naissance'), null=True, blank=True)
#DOCUMENTS TO UPLOAD
id_card = models.FileField(('Carte Nationale d\'Identité'), upload_to='documents/CNI')
drive_licence = models.FileField(('Permis de conduire'), upload_to='documents/RIB')
uploaded_at = models.DateTimeField(('Ajouté le'), auto_now=True)
docs_are_checked = models.BooleanField(('Documents validés'), default=False)
retraçage:
Traceback (most recent call last):
File "C:\venvs\env1\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
response = get_response(request)
File "C:\venvs\env1\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File "C:\venvs\env1\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\djangoprojects\mysite\mysite\core\views.py", line 272, in contactUber
msg.attach_file(user.profile.id_card.url) #the file that i want to attach
File "C:\venvs\env1\lib\site-packages\django\core\mail\message.py", line 394, in attach_file
with open(path, 'rb') as file:
FileNotFoundError: [Errno 2] No such file or directory: '/media/documents/CNI/1847635-2524541_FZLHlIr.jpg'
[16/Aug/2017 12:10:27] "GET /core/send_mail_uber/16/ HTTP/1.1" 500 73307
Ma question est: Comment résoudre ce problème
et quelle est votre question? Est-ce comment réparer cela? Pourquoi cela se passe-t-il? Ou quoi? s'il vous plaît soyez clair lors de l'affichage sur SO. –
@ N.Ivanov modifier –