0
django-admin에서 admin에 대한 추가 작업을 만들고 싶습니다.CSV로 Django 객체 모델 내보내기
데이터를 CSV 형식으로 내보낼 수 있기를 원합니다.
내 admin.py
에 다음 코드를 작성했습니다 :
from django.contrib import admin
from .models import News, ResourceTopic, Resource, PracticeTopic, Practice, Contacts, Visualization
import csv
from django.utils.encoding import smart_str
from django.http import HttpResponse
admin.site.register(News)
admin.site.register(ResourceTopic)
admin.site.register(Resource)
admin.site.register(PracticeTopic)
admin.site.register(Practice)
admin.site.register(Visualization)
def export_csv(modeladmin, request, queryset):
response = HttpResponse(content_type='text/csv')
response['Content-Disposition'] = 'attachment; filename="somefilename.csv"'
writer = csv.writer(response)
writer.writerow([
"First Name",
"Last Name",
"Organization",
"City",
"Country",
"Email",
])
for obj in queryset:
writer.writerow([
obj.firstName,
obj.lastName,
obj.organization,
obj.city,
obj.country,
obj.email,
])
return response
class contactsAdmin(admin.ModelAdmin):
actions = [export_csv]
admin.site.register(Contacts, contactsAdmin)
내가 가진 문제 : 파일이 및 HTML 파일이 같은 장고 관리자 페이지를 표시 인 download.html로 다운로드됩니다.
시도하면이 같은 mime_type''에'content_type' https://gist.github.com/mgerring을 변경하려면/3645889 –