📌 Django-extensions 완전 가이드 - 실전 개발을 위한 필수 도구

2025. 5. 16. 15:55·기술블로그-Django편

📌 Django-extensions 완전 가이드 - 실전 개발을 위한 필수 도구


🧩 django-extensions란?

django-extensions는 Django 개발을 더 쉽고 강력하게 도와주는 도우미 커맨드 모음집입니다. 다양한 커맨드라인 기능을 추가로 제공해주는 개발 생산성 향상 라이브러리입니다.


🚀 주요 특징

기능 설명

📜 shell_plus 자동 import가 적용된 Django shell 실행
🧪 runscript 관리 명령어로 스크립트 실행 가능
🔁 show_urls 전체 URL 목록 보기 (path, name, view 확인용)
🔄 graph_models ERD를 시각화한 모델 구조도 생성
🧼 clean_pyc .pyc 캐시 파일 전체 삭제

⚙️ 설치 및 세팅

1. 설치 명령어

pip install django-extensions

2. settings.py 등록

INSTALLED_APPS = [
    ...
    'django_extensions',
]

💡 자주 사용하는 명령어 예시

✅ shell_plus

python manage.py shell_plus
  • 모델, settings 등 대부분의 객체를 자동 import한 채로 shell 진입
  • ipython, bpython, ptpython과 연동 가능

✅ runscript

python manage.py runscript myscript
  • scripts/myscript.py 파일 실행
  • 데이터 초기화, 샘플 삽입 등에 활용 가능

✅ show_urls

python manage.py show_urls
  • 프로젝트 전체 URL 목록 출력
  • URL 디버깅 및 문서화에 유용

✅ graph_models

python manage.py graph_models -a -o erd.png
  • 전체 앱 모델 구조를 ERD 이미지로 시각화
  • Graphviz 설치 필요: brew install graphviz 또는 apt install graphviz

📁 스크립트 폴더 구조 예시

project/
└── app/
    └── scripts/
        └── myscript.py
# myscript.py 예시
from app.models import MyModel

def run():
    MyModel.objects.create(name="테스트")

✅ 요약 정리

항목 설명

라이브러리명 django-extensions
핵심 기능 shell_plus, runscript, show_urls, graph_models 등
shell_plus 자동 import 기능이 포함된 Django shell 실행
runscript 특정 파이썬 스크립트를 관리 명령으로 실행
설치 후 INSTALLED_APPS에 'django_extensions' 추가 필수

django-extensions는 실무에서 데이터 테스트, 구조 분석, 스크립트 실행을 간편하게 해주는 개발자 필수 툴입니다. 초기에 잘 설정해두면 프로젝트 전반의 생산성을 획기적으로 높일 수 있어요 ⚙️

'기술블로그-Django편' 카테고리의 다른 글

🔐 Django signing.dumps() 완벽 이해하기  (0) 2025.05.19
📌 OAuth2 & 네이버 소셜 로그인 흐름 완전 정리  (0) 2025.05.16
📌 Django-summernote - WYSIWYG 에디터 통합 가이드  (0) 2025.05.16
📌 Django ImageField 완전 정리 - 이미지 업로드 기능 구현 가이드  (0) 2025.05.16
✅ Django ORM 필드 룩업 완전 정복: nickname__icontains vs tags__tag 차이 이해하기  (0) 2025.05.16
'기술블로그-Django편' 카테고리의 다른 글
  • 🔐 Django signing.dumps() 완벽 이해하기
  • 📌 OAuth2 & 네이버 소셜 로그인 흐름 완전 정리
  • 📌 Django-summernote - WYSIWYG 에디터 통합 가이드
  • 📌 Django ImageField 완전 정리 - 이미지 업로드 기능 구현 가이드
Chansman
Chansman
안녕하세요! 코딩을 시작한 지 얼마 되지 않은 초보 개발자 찬스맨입니다. 이 블로그는 제 학습 기록을 남기고, 다양한 코딩 실습을 통해 성장하는 과정을 공유하려고 합니다. 초보자의 눈높이에 맞춘 실습과 팁, 그리고 개발하면서 겪은 어려움과 해결 과정을 솔직하게 풀어내려 합니다. 함께 성장하는 개발자 커뮤니티가 되기를 바랍니다.
  • Chansman
    찬스맨의 프로그래밍 스토리
    Chansman
  • 전체
    오늘
    어제
    • 분류 전체보기 (777) N
      • Python (32)
      • 프로젝트 (101) N
      • 과제 (25)
      • Database (40)
      • 멘토링 (11)
      • 특강 (37)
      • 기술블로그 (41)
      • 기술블로그-Fastapi편 (33)
      • 기술블로그-Django편 (153)
      • 기술블로그-Flask편 (36)
      • AI 분석 (5)
      • HTML & CSS (31)
      • JavaScript (17)
      • AWS_Cloud (21)
      • 웹스크래핑과 데이터 수집 (14)
      • Flask (42)
      • Django (77)
      • Fastapi (16)
      • 연예 (14)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    classaction
    btscomeback
    livebroadcast
    chinanightlife
    global politics
    smartphonedurability
    self-growth
    americaparty
    chatgpterror
    btsjungkook
    remittance
    lawsuitculture
    bts
    college reunions
    RM
    hotcoffeecase
    homebartrend
    americanlaw
    titaniumcase
    btsreunion
    youngprofessionals
    btsdischarge
    trumpmuskclash
    travel ban
    life reflection
    newpoliticalparty
    뷔
    gpterror
    basalcellcarcinoma
    urbantrends
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Chansman
📌 Django-extensions 완전 가이드 - 실전 개발을 위한 필수 도구
상단으로

티스토리툴바