[python] Django and MongoDB 연동 방법은 어떻게 되는가?

Django는 기본적으로 RDBMS와의 연동을 위한 ORM(Object-Relational Mapping)을 제공하지만, MongoDB와의 연동을 위해서는 몇 가지 추가적인 설정이 필요합니다.

  1. pymongo 패키지 설치하기: MongoDB를 Django와 연동하기 위해서는 pymongo 패키지가 필요합니다. 아래 명령어를 사용하여 pymongo를 설치해주세요.
pip install pymongo
  1. settings.py 파일 수정하기: Django 프로젝트의 settings.py 파일에서 DATABASES 항목을 다음과 같이 수정해주세요.
DATABASES = {
    'default': {
        'ENGINE': 'djongo',
        'NAME': '<database_name>',
        'CLIENT': {
            'host': '<mongodb_connection_string>',
            'username': '<mongodb_username>',
            'password': '<mongodb_password>',
            'authSource': '<authentication_database>',
            'authMechanism': 'SCRAM-SHA-1',
        }
    }
}

위 설정에서 <database_name>은 MongoDB에 사용할 데이터베이스의 이름으로 변경해주시고, <mongodb_connection_string>은 MongoDB 서버의 연결 문자열입니다. <mongodb_username>, <mongodb_password>, <authentication_database>은 MongoDB에 접속하기 위한 인증 정보입니다.

  1. 모델 정의하기: Django 모델을 정의할 때 MongoDB와 연동하기 위해서는 djongo.models 모듈에서 Model 클래스를 상속받아야 합니다. 예를 들어, 다음과 같이 모델을 정의할 수 있습니다.
from django.db import models
from djongo.models import Model

class Product(Model):
    name = models.CharField(max_length=100)
    price = models.DecimalField(max_digits=6, decimal_places=2)
    description = models.TextField()
  1. 마이그레이션 수행하기: Django의 마이그레이션 기능을 사용하여 모델의 변경사항을 MongoDB에 적용합니다. 아래 명령어를 사용하여 마이그레이션을 수행합니다.
python manage.py makemigrations
python manage.py migrate

이제 Django와 MongoDB가 잘 연동되었고, MongoDB를 사용하는 Django 모델을 정의하고 데이터를 조작할 수 있습니다.

참고 문서:

위와 같이 Django와 MongoDB를 연동하면 Django의 강력한 기능과 MongoDB의 유연성을 함께 활용할 수 있습니다.