0% ont trouvé ce document utile (0 vote)
2 vues3 pages

Def

Le document présente des fonctions d'exportation PDF pour les ordres du jour et les textes dans une application Django. Il définit des classes d'administration pour gérer l'affichage et l'exportation des données adoptées en format PDF. Les utilisateurs reçoivent un message d'avertissement si aucune donnée adoptée n'est disponible pour l'exportation.
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOC, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues3 pages

Def

Le document présente des fonctions d'exportation PDF pour les ordres du jour et les textes dans une application Django. Il définit des classes d'administration pour gérer l'affichage et l'exportation des données adoptées en format PDF. Les utilisateurs reçoivent un message d'avertissement si aucune donnée adoptée n'est disponible pour l'exportation.
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOC, PDF, TXT ou lisez en ligne sur Scribd

from django.

contrib import admin

from [Link] import HttpResponse

from [Link] import render_to_string

from weasyprint import HTML

from .models import OrdreDuJour, Texte

# Fonction pour l'exportation des ordres du jour

def export_pdf_ordres(admin, request, queryset):

template_path = 'admin/pdf_template_adopted_ordresdujour.html'

context = {'ordres': queryset}

return create_pdf_response(template_path, context)

# Fonction pour l'exportation des textes

def export_pdf_textes(admin, request, queryset):

template_path = 'admin/pdf_template_textes_adoptes.html'

context = {'textes': queryset}

return create_pdf_response(template_path, context)

# Fonction d'assistance pour créer une réponse PDF

def create_pdf_response(template_path, context):

html_string = render_to_string(template_path, context)

html = HTML(string=html_string)

response = HttpResponse(content_type='application/pdf')

response['Content-Disposition'] = 'attachment; filename="[Link]"'

html.write_pdf(response)
return response

# Classe d'administration pour les ordres du jour

class OrdreDuJourAdmin([Link]):

list_display = ('periodeDebut', 'periodeFin', 'etat')

actions = ['export_pdf_adopted_ordres']

def export_pdf_adopted_ordres(self, request, queryset):

adopted_ordres = [Link](etat='adopte')

if adopted_ordres.exists():

return export_pdf_ordres(self, request, adopted_ordres)

else:

self.message_user(request, "Aucun ordre du jour adopté à exporter.", level='warning')

export_pdf_adopted_ordres.short_description = "Exporter les ordres du jour adoptés en PDF"

[Link](OrdreDuJour, OrdreDuJourAdmin)

# Classe d'administration pour les textes

class TexteAdmin([Link]):

list_display = ('date_de_depot', 'numero', 'intitule', 'state')

actions = ['export_pdf_adopted_textes']

def export_pdf_adopted_textes(self, request, queryset):

adopted_textes = [Link](state='loi_adopte')
if adopted_textes.exists():

return export_pdf_textes(self, request, adopted_textes)

else:

self.message_user(request, "Aucun texte adopté à exporter.", level='warning')

export_pdf_adopted_textes.short_description = "Exporter les textes adoptés en PDF"

[Link](Texte, TexteAdmin)

Vous aimerez peut-être aussi