BTC $86,198.00 -0,01%
ETH $2,714.71 -0,22%
SOL $120.22 -0,58%
BNB $783.55 -0,95%
XRP $1.51 -0,56%
ADA $0.2788 +1,91%
LINK $14.02 -1,28%
DOGE $0.0957 -0,81%
AVAX $11.37 +3,14%
HYPE $93.47 +0,04%
SUI $1.20 -3,06%
BTC $86,198.00 -0,01%
ETH $2,714.71 -0,22%
SOL $120.22 -0,58%
BNB $783.55 -0,95%
XRP $1.51 -0,56%
ADA $0.2788 +1,91%
LINK $14.02 -1,28%
DOGE $0.0957 -0,81%
AVAX $11.37 +3,14%
HYPE $93.47 +0,04%
SUI $1.20 -3,06%
WISKTON.XYZ Logo
Dev Iniciante [LEVEL 1]

Exportando CSV no admin do django

Exportando CSV no admin do django

1) Criar um arquivo na raiz do projeto ou na pasta app com o nome de actions.py
(neste caso está sendo criado dentro de app)

2) Inserir este código no arquivo actions.py:

# -*- coding: utf-8 -*-

import csv
from django.core.exceptions import PermissionDenied
from django.http import HttpResponse

def export_as_csv(modeladmin, request, queryset):
"""
Generic csv export admin action.
"""

if not request.user.is_staff:
raise PermissionDenied

opts = modeladmin.model._meta
response = HttpResponse(mimetype='text/csv')
attach = 'attachment; filename=%s.csv' % unicode(opts).replace('.', '_')
response['Content-Disposition'] = attach
writer = csv.writer(response)
field_names = [field.name for field in opts.fields]

# Write a first row with header information
writer.writerow(field_names)

# Write data rows
for obj in queryset:
writer.writerow([getattr(obj, field) for field in field_names])

return response

export_as_csv.short_description = "Exportar Cadastros Selecionados como CSV"

3) No admin que deseja que aconteça a exportação, importar o actions.py desta maneira:

from app.actions import export_as_csv

class MyAdmin(admin.ModelAdmin):
actions = [export_as_csv]

Dica de Higor Rossato

AVISO DE SEGURANÇA (DYOR): Todo o conteúdo do wiskton.xyz tem caráter estritamente educativo e informativo. Criptoativos envolvem volatilidade e riscos cibernéticos. Jamais compartilhe sua seed phrase ou chaves privadas com terceiros.
// TRANSMISSÃO DE DADOS // COMPARTILHE ESTE PROTOCOLO
CYPHERPUNK BROADCAST NETWORK
wiskton
[ESCRITO POR]

Willem (WISKTON) Allan

Editor-Chefe, Desenvolvedor & Pesquisador Cypherpunk

Youtuber, Programador, investidor, fanático em tecnologia, fã de dragon ball, artista marcial, futebolista amador e gamer nas horas vagas.

// DISCUSSÃO & COMENTÁRIOS (0)
MODERADO VIA MATRIX

DEIXE UMA RESPOSTA

Nenhum comentário registrado ainda. Seja o primeiro a comentar!

// POSTS RELACIONADOS DA CATEGORIA

// MATRIX BUFFER LINK COPIADO COM SUCESSO!