django admin csv file import and export

이지훈·2022년 5월 9일
0

django 파일을 export import 하는 방법을 알아보자

# settings.py

import os

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

그리고 설치할 패키지가 있다.

pip install django-import-export

# settings.py
INSTALLED_APPS = (
    ...
    'import_export',
)

python manage.py collectstatic

스태틱 파일을 모아줬으면, 이제 모델을 만들어주자.

# models.py

from django.db import models


class Task(models.Model):
    name = models.CharField(max_length=256)
    description = models.CharField(max_length=256)
    due_date = models.DateTimeField()
    is_complete = models.BooleanField(default=False)
    
    
 # admin.py
 from django.contrib import admin
from import_export.admin import ImportExportMixin
from project.models import Task


class TaskAdmin(ImportExportMixin, admin.ModelAdmin):
    list_display = ['name', 'description', 'due_date', 'is_complete']


admin.site.register(Task, TaskAdmin)
    

테스트용 csv 파일을 만든 후, admin에 import를 해본다.

그럼 프리뷰에 데이터가 나온다.

export를 해봤다.

데이터가 정상적으로 나온다.

참고로 데이터 형식이 틀리면, 이렇게 알려준다.


참고자료
https://python.plainenglish.io/the-easy-way-to-import-export-data-from-django-admin-fe17ecd012fb

profile
꾸준하게 🐌

0개의 댓글