*** MISE À JOUR: django-Excel-modèles ne sont maintenus plus longtemps, essayez de la place Marmir http://brianray.github.com/mm/
Toujours dans le développement que je tape ceci, mais http://code.google.com/p/django-excel-templates/ Django Excel projet modèles vise à faire ce que votre demande.
Voir spécifiquement les tests. Voici un cas simple:
#
from django_excel_templates import *
from django_excel_templates.color_converter import *
from models import *
from django.http import HttpResponse
def xls_simple(request):
## Simple ##
testobj = Book.objects.all()
formatter = ExcelFormatter()
simpleStyle = ExcelStyle(vert=2,wrap=1)
formatter.addBodyStyle(simpleStyle)
formatter.setWidth('name,category,publish_date,bought_on',3000)
formatter.setWidth('price',600)
formatter.setWidth('ebook',1200)
formatter.setWidth('about',20000)
simple_report = ExcelReport()
simple_report.addSheet("TestSimple")
filter = ExcelFilter(order='name,category,publish_date,about,bought_on,price,ebook')
simple_report.addQuerySet(testobj,REPORT_HORZ,formatter, filter)
response = HttpResponse(simple_report.writeReport(),mimetype='application/ms-excel')
response['Content-Disposition'] = 'attachment; filename=simple_test.xls'
return response
merci, je pensais que ce devrait être quelque chose comme ça, je ne savais pas où chercher. Je vais essayer –
Cela fonctionne très bien, mais pas jusqu'à ce que vous compreniez la syntaxe. L'astuce consiste à créer un objet HttpResponse et à y enregistrer le classeur xlwt. Exemple: xls_response = HttpResponse (mimetype = "application/ms-excel") xls_response ['Content-Disposition'] = 'pièce jointe; filename = foo.xls ' xls.save (xls_response) return xls_response – ShawnMilo
Merci mon cher, vous avez vraiment résolu mon problème. Beaucoup apprécié votre aide! –