Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Django 모델에 JSON 필드 추가하는 방법 완벽 가이드

이 글에서는 Django 모델에 JSON 필드를 추가하는 방법을 알아보겠습니다. JSON은 데이터를 키(key)와 값(value) 형태로 저장하는 간단한 포맷으로, 중괄호({ })로 표기됩니다. 개발자 웹사이트에서 사용자별 설정값이나 유동적인 데이터를 저장해야 할 때 JSON 필드가 매우 유용하게 활용됩니다.

시작하기에 앞서 Django 프로젝트와 앱을 먼저 생성해야 합니다. 앱을 INSTALLED_APPS에 등록하고, URL을 설정하며, 기본 모델을 만들어 HTML 파일에 폼을 렌더링하는 등의 기본 작업을 완료해 주세요.

1. django-jsonfield 패키지 설치

가장 먼저 django-jsonfield 패키지를 설치합니다.

pip install django-jsonfield

2. 모델 생성

이제 models.py 파일에 아래와 같이 모델을 작성합니다.

import jsonfield
from django.db import models

# Create your models here.

class StudentData(models.Model):
    name = models.CharField(max_length=100)
    standard = models.CharField(max_length=100)
    section = models.CharField(max_length=100)
    the_json = jsonfield.JSONField()

위 코드는 네 개의 필드를 가진 모델을 정의한 것입니다. 이 중 마지막 필드인 the_json이 서드파티 패키지에서 제공하는 JSON 필드입니다.

3. 관리자 페이지에 모델 등록

admin.py 파일에 다음 코드를 추가하여 모델을 Django 관리자 페이지에 등록합니다.

from django.contrib import admin
from .models import StudentData

admin.site.register(StudentData)

4. 마이그레이션 및 슈퍼유저 생성

아래 명령어를 순서대로 실행합니다.

python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser

앞의 두 명령어는 데이터베이스에 실제 테이블을 생성하고, 마지막 명령어는 관리자 페이지에 로그인할 수 있는 슈퍼유저 계정을 만들어 줍니다.

결과 확인

모든 설정이 끝났습니다. 브라우저에서 https://127.0.0.1/admin/에 접속한 뒤, 등록한 모델의 관리 페이지로 이동하여 새 인스턴스를 추가해 보세요. 아래 이미지와 같이 JSON 형식의 데이터를 입력할 수 있는 필드가 화면에 나타나는 것을 확인할 수 있습니다.

Django 모델에 JSON 필드 추가하는 방법 완벽 가이드