0
我想附加文件並將其發送到電子郵件。 ,但它將我重定向到一個錯誤頁面,即error.html。文件沒有發送到電子郵件。你可以幫我解決這個錯誤。我是django的新手,你的幫助值得讚賞。三江源發送電子郵件附件使用Django:
models.py
class Email(models.Model):
email = models.EmailField()
subject = models.CharField(max_length=100)
attach = models.FileField()
message = models.CharField(max_length=250)
forms.py
views.py
def send_email(request):
if request.method != 'POST':
form = EmailForm()
context = {
"form": form
}
return render(request,'email.html', context)
form = EmailForm(request.POST, request.FILES)
if form.is_valid():
subject = form.cleaned_data.get("subject")
message = form.cleaned_data.get("message")
email = form.cleaned_data.get("email")
a = request.FILES['attach']
try:
mail = EmailMessage(subject, message, settings.EMAIL_HOST_USER, '[email protected]')
mail.attach_file(a.name, a.read(), a.content_type)
mail.send()
context ={
"message": 'Sent email to %s' % email
}
return render(request,'email.html',context)
except:
context = {
"message": 'Either the attachment is too big or corrupt'
}
return render(request,'error.html',context)
return render(request,'email.html', {'message': 'Unable to send email. Please try again later'})
刪除except塊以查看實際錯誤。 – Selcuk
它將返回到email.html頁面 –