로그인 회원가입
모두인포
전체IT경제사회생활스포츠시사여행연애

Python django

lmkfox · 2025-04-08 · 조회 0
Python django
좋아, 이번엔 Python의 웹 프레임워크 중 하나인 Django에 대해 자세히 설명해줄게. Django란? Django는 Python으로 작성된 고수준 웹 프레임워크야. 웹 애플리케이션을 빠르고 효율적으로 개발할 수 있게 해줘. “DRY(Don’t Repeat Yourself)“와 “재사용성”을 강조하고, 보안에 신경 쓰면서도 확장성이 좋아서 규모 있는 프로젝트에 자주 사용돼. Django의 특징 • MTV 아키텍처 사용 Django는 Model-Template-View 패턴을 사용해. MVC(Model-View-Controller)와 비슷한 구조야. • Model: 데이터베이스 구조 정의 (ORM 사용) • Template: 사용자에게 보여지는 HTML • View: 비즈니스 로직 처리 • 강력한 ORM (Object-Relational Mapping) SQL을 직접 쓰지 않고, Python 클래스만으로 DB 연동이 가능해. • 자동 관리자(admin) 페이지 제공 데이터베이스 기반의 관리 UI를 자동으로 생성해줘서 운영에 매우 유리해. • 보안 기능 내장 XSS, CSRF, SQL Injection 같은 취약점에 기본적으로 대응돼 있음. • 풍부한 문서와 커뮤니티 공식 문서가 잘 정리되어 있고, 튜토리얼도 많아서 입문자에게 좋아. Django 프로젝트 구조 예시 Django 프로젝트를 시작하면 보통 이런 구조가 만들어져: myproject/ ├── manage.py ├── myproject/ │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py └── myapp/ ├── __init__.py ├── admin.py ├── apps.py ├── models.py ├── tests.py ├── views.py └── templates/ Django 기초 예시 1. 프로젝트 생성 django-admin startproject myproject cd myproject python manage.py startapp myapp 2. Model 작성 # myapp/models.py from django.db import models class Post(models.Model): title = models.CharField(max_length=200) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) 3. 마이그레이션으로 DB 반영 python manage.py makemigrations python manage.py migrate 4. 관리자(admin) 등록 # myapp/admin.py from django.contrib import admin from .models import Post admin.site.register(Post) 5. View와 Template 작성 # myapp/views.py from django.shortcuts import render from .models import Post def post_list(request): posts = Post.objects.all() return render(request, 'post_list.html', {'posts': posts}) <!-- templates/post_list.html --> <h1>블로그 글 목록</h1> {% for post in posts %} <h2>{{ post.title }}</h2> <p>{{ post.content }}</p> {% endfor %} 6. URL 연결 # myapp/urls.py from django.urls import path from . import views urlpatterns = [ path('', views.post_list, name='post_list'), ] # myproject/urls.py from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('myapp.urls')), ] Django를 배우기 좋은 사람 • 웹 애플리케이션을 Python으로 만들고 싶은 사람 • 보안이나 관리자 기능이 내장된 프레임워크가 필요한 사람 • 빠르게 개발해서 실제 서비스까지 연결하고 싶은 사람 더 알고 싶은 부분이 있어? 예를 들어: • 회원가입/로그인 구현 방법 • Django와 React 연결 방법 • Django REST Framework로 API 만들기 어떤 쪽이든 알려줘. 그 부분부터 자세히 설명해줄게.

댓글

아직 댓글이 없습니다.

로그인 후 댓글을 남길 수 있습니다.