이전 CSV 파일의 데이터를 DB에 Upload 할 경우 각 CSV 파일을 Open하여 데이터를 가져오는 번거로움이 있어 하나의 Excel 파일, 각 Sheet 별로 관리하여 한번만 파일을 Open 할 수 있는 방법을 찾아봄.
pip install pandas
import os
import django
import pandas
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mywishtrip.settings')
django.setup()
from products.models import MainCategory, SubCategory, Region
PATH = './wishtrip.xlsx'
xl = pandas.ExcelFile(PATH)
sheets = xl.sheet_names
df = pandas.read_excel(xl,sheets[0])
df2 = pandas.read_excel(xl,sheets[1])
df3 = pandas.read_excel(xl,sheets[2])
#sheet1
MainCategory.objects.all().delete()
for data in df.iloc:
MainCategory.objects.create(**dict(data))
#sheet2
SubCategory.objects.all().delete()
for data in df2.iloc:
SubCategory.objects.create(**dict(data))
#sheet3
Region.objects.all().delete()
for data in df3.iloc:
Region.objects.create(**dict(data))