J'essaye de créer un email dans Django avec des images en ligne.Afficher des images en ligne sur iPhone, iPad
msg = EmailMultiAlternatives(...)
image_file = open('file_path', 'rb')
img = MIMEImage(img_data)
image_file.close()
img.add_header('Content-ID', '<image1>')
img.add_header('Content-Disposition', 'inline')
msg.attach(img)
msg.send()
Et dans le modèle, je référence comme ceci:
<img src="cid:image1" />
Cela fonctionne très bien dans les navigateurs web, les perspectives, thunderbird ... tous, sauf pour le client de messagerie Apple sur Mac OS X, iPad et iPhone Les images sont affichées deux fois. Ils sont placés en ligne correctement, mais ils sont également attachés au bas de l'email. Ma question est, comment puis-je me débarrasser des images en bas? ou devrais-je aborder les images dans les emails différemment.
Références:
http://djangosnippets.org/snippets/1507/
Django: How to send HTML emails with embedded images
creating a MIME email template with images to send with python/django
ReTAG votre question à une étiquette plus spécifique comme « email » ou « email de pomme » pour trouver des gens plus intéressés à oublier et demander « created par courrier électronique Django » pour l'instant. – hynekcer
merci pour le conseil – SunnySydeUp
Joindre des images (pour autant que je sache) est une tentative de les afficher par défaut - c'est-à-dire sans avoir à activer "Afficher toutes les images de [email protected]" donc l'alternative est d'utiliser URL vers une image hébergée sur votre serveur. L'image apparaîtra seulement une fois, mais elle pourrait nécessiter une action de l'utilisateur. –