PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 PL/Python » Décodage de accents avec python » 21/08/2013 17:59:09

Ludo_3
Réponses : 1

Bonjour,

J'ai un joli script qui me permet d'en voyer des Emails après une mise à jour d'un champ via un trigger mais le résultat ne joue pas avec les accents et autre spécialité francophone.

Voici mon code:

CREATE OR REPLACE Function send_email() RETURNS TRIGGER AS
$BODY$
#python starts here
# Import smtplib for the actual sending function
import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.Utils import formatdate
from email.MIMEText import MIMEText

to =["mon_mail"]

msg = MIMEMultipart()
msg['From'] = "son_mail"
msg['To'] = ','.join(to)
msg['Date'] = formatdate(localtime=True)

msg['Subject'] = u"Tâche effectuée avec succès"
text = u"La mise à jour de la table de recherche s'est effectuée avec succès sur NESITN4.\n\n"
text += TD['table_name']

msg['Importance'] = "high"

text += u"\n\npar: le magnifique trigger Python"

msg.attach( MIMEText(text, 'plain','utf-8') )

smtp = smtplib.SMTP('mon_serveur',mon_port)
smtp.sendmail("son_mail", to, msg.as_string())
smtp.close()

$BODY$
  LANGUAGE plpythonu VOLATILE
  COST 100;
ALTER FUNCTION send_email() OWNER TO postgres;

Je sais qu'il faut encodé en "UTF-8" mais aucune idée comment faire!

De plus je souhaite ajouter des informations de ma BD  dans mon mail mais les seules valeur que j'arrive à sortir sont les valeurs du Trigger qui déclenche ma fonction.

Merci de votre aide

Pied de page des forums

Propulsé par FluxBB