Django-fr

Forum

#1 21-10-2011 12:43:12

Bourhis Yves
Membre
Inscription : 03-10-2011
Messages : 46

Pb. d'encodage de l'apostrophe

Bonjour,

dans l'interface d'administration je propose une action pour exporter
une sélection d'enregistrement dans un fichier "csv". Mon problème est
que l'apostrophe ' est traduit par \" (les accents eux passent
bien) : est ce que quelqu'un aurait une idée ?

En vous souhaitant un bon week-end,
cordialement.

Ma fonction d'export. :
-------------
def exportProf(modeladmin,  request, queryset):
     response = HttpResponse(mimetype="text/csv")
     response['Content-Disposition'] = 'attachment; filename=prof.csv'
     t = loader.get_template('prof_csv.txt')
     c = Context({
         'data': queryset.all(),
     })
     response.write(t.render(c))
     return response
exportProf.short_description = "Export. de la selection au format 'csv'"
-------------

et mon modèle "prof_csv.txt" :
-------------
{{ "N°" }};{{ "Civilité" }};{{ "Nom" }};{{ "Prénom" }};{{"Téléphone
fixe"}};{{"Portable"}};{{"Fax"}};{{"Courriel"}};{{"Enseignement"}};{{"Jury
?"}};{{"Remarques"}}
{% for row in data %}{{ row.pr_numero }};"{{ row.pr_civilite|addslashes
}}";"{{ row.pr_nom|addslashes }}";"{{ row.pr_prenom|addslashes }}";"{{
row.pr_tel_fixe|addslashes }}";"{{ row.pr_tel_portable|addslashes
}}";"{{ row.pr_fax|addslashes }}";"{{ row.pr_courriel|addslashes }}";"{{
row.pr_enseignement|addslashes }}";{{ row.pr_jury }};"{{
row.pr_remarques|addslashes }}"
{% endfor %}
-------------

Hors ligne

#2 21-10-2011 12:47:50

Bruno Renié
Membre
Inscription : 11-08-2010
Messages : 52

Re : Pb. d'encodage de l'apostrophe

Regarde plutôt le module csv pour générer ce genre de chose

https://docs.djangoproject.com/en/dev/howto/outputting-csv/
http://docs.python.org/library/csv.html

2011/10/21 Bourhis Yves <yves.bourhis _AT_ univ-brest.fr>:
> Bonjour,
>
> dans l'interface d'administration je propose une action pour exporter une
> sélection d'enregistrement dans un fichier "csv". Mon problème est que
> l'apostrophe ' est traduit par \&quot; (les accents eux passent bien) : est
> ce que quelqu'un aurait une idée ?
>
> En vous souhaitant un bon week-end,
> cordialement.
>
> Ma fonction d'export. :
> -------------
> def exportProf(modeladmin,  request, queryset):
>    response = HttpResponse(mimetype="text/csv")
>    response['Content-Disposition'] = 'attachment; filename=prof.csv'
>    t = loader.get_template('prof_csv.txt')
>    c = Context({
>        'data': queryset.all(),
>    })
>    response.write(t.render(c))
>    return response
> exportProf.short_description = "Export. de la selection au format 'csv'"
> -------------
>
> et mon modèle "prof_csv.txt" :
> -------------
> {{ "N°" }};{{ "Civilité" }};{{ "Nom" }};{{ "Prénom" }};{{"Téléphone
> fixe"}};{{"Portable"}};{{"Fax"}};{{"Courriel"}};{{"Enseignement"}};{{"Jury
> ?"}};{{"Remarques"}}
> {% for row in data %}{{ row.pr_numero }};"{{ row.pr_civilite|addslashes
> }}";"{{ row.pr_nom|addslashes }}";"{{ row.pr_prenom|addslashes }}";"{{
> row.pr_tel_fixe|addslashes }}";"{{ row.pr_tel_portable|addslashes }}";"{{
> row.pr_fax|addslashes }}";"{{ row.pr_courriel|addslashes }}";"{{
> row.pr_enseignement|addslashes }}";{{ row.pr_jury }};"{{
> row.pr_remarques|addslashes }}"
> {% endfor %}
> -------------
>
> --
> _______________________________________________________________
> Yves BOURHIS / Service Informatique / I.U.T. de BREST /Tel 8204
> Tel:0298016102/Fax:0298017108/mailto:Yves.Bourhis _AT_ univ-brest.fr
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

Pied de page des forums