Я использую флеш-почту для отправки почты, которая будет включать в себя PDF-документ в качестве вложения. Проблема в том, что когда я получаю его в своем электронном письме, имя документа оказывается «noname» (без какого-либо расширения), дажехотя этот документ доступен для скачивания и чтения, есть некоторые исключительные случаи (вероятно, 1 из 10), когда документ не может быть открыт (возможно, потому что расширение не установлено).
def send_mail_flask_to_user(self, doc_name, document_id, email,approve):
app.config.update(self.mail_settings)
mail = Mail(app)
with app.app_context():
msg = Message(sender=app.config.get(
"MAIL_USERNAME"), recipients=[email])
msg.subject = '{} Coriolis Tech'.format(doc_name)
msg.body=""" Dear {},
your request for {} has be approved and generated,please find the attachment for the same""".format(email.split('.')[0],doc_name)
working_dir=os.getcwd()
link = "https://docs.google.com/document/d/{}/".format(document_id)
if (approve==True):
with open(working_dir+"/generated_docs/"+document_id+".pdf",'rb') as fh:
msg.attach(working_dir+"/"+document_id+".pdf","application/pdf",fh.read())
elif(approve==False):
msg.body=""" Your {} is rejected ,contact Division of Human Resource Coriolis Technologies to know more""".format(doc_name)
mail.send(msg)
Эта проблема сохраняется только в Ubuntu14.04, где, как это прекрасно работает на машине Windows ![Screenshot of received email](https://i.stack.imgur.com/F0tZ6.png)