반응형
Django는 파이썬 기반의 강력한 웹 프레임워크 입니다. 빠른 개발과 깔끔한 디자인을 동시에 실현할 수 있어 많은 개발자들이 선호합니다.
Django 설치 및 프로젝트 시작
먼저 Django를 설치하고 프로젝트를 시작해 봅시다.
pip install django
django-admin startproject myproject
cd myproject
python manage.py runserver
Django의 기본 구조
Django는 MVT(Model-View-Template) 패턴을 따릅니다.
- Model : 데이터베이스 구조 정의
- View : 비지니스 로직 정리
- Template : 사용자에게 보여지는 화면
앱 생성하기
python manage.py startapp myapp
Models 작성하기
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)
def __str__(self):
return self.title
모델을 생성했다면 다음 명령어로 데이터베이스에 반영합니다.
python manage.py makemigrations
python manage.py migrate
View 만들기
veiw.py에서 페이지의 로직을 작성합니다.
from django.shortcuts import render
from .models import Post
def post_list(request):
posts = Post.objects.all()
return render(request, 'myapp/post_list.html', {'posts': posts})
URL 설정하기
urls.py에서 URL 패턴을 정의 합니다.
from django.urls import path
from . import views
urlpatterns = [
path('posts/', views.post_list, name='post_list'),
]
Templates 작성하기
HTML 템플릿을 만들어 데이터를 표시합니다.
{% extends 'base.html' %}
{% block content %}
{% for post in posts %}
<h2>{{ post.title }}</h2>
<p>{{ post.content }}</p>
{% endfor %}
{% endblock %}
Forms 활용하기
forms.py를 생성하여 폼을 정의 합니다.
from django import forms
from .models import Post
class PostForm(forms.ModelForm):
class Meta:
model = Post
fields = ['title', 'content']
Admin 인터페이스 설정
admin.py에서 관리자 페이지를 설정 합니다.
from django.contrib import admin
from .models import Post
admin.site.register(Post)
정적파일 관리
static 폴더에 CSS, JavaScript, 이미지 파일을 저장 합니다.
STATIC_URL = '/static/'
STATICFILES_DIRS = [
BASE_DIR / "static",
]
보안 설정
settings.py에서 중요한 보안 설정을 관리 합니다.
SECRET_KEY = '안전한_키_값'
DEBUG = False
ALLOWED_HOSTS = ['yourdomain.com']
데이터 베이스 연동
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
실전 활용 팁
- 가상환경 사용하기
- requirements.txt 관리하기
- 디버그 모드 활용하기
- 테스트 코드 작성하기
마무리
Django는 강력하면서도 배우기 쉬운 웹 프레임워크 입니다. 이 기초를 바탕으로 실제 프로젝트를 진행하면서 더 깊이 학습하는 시간을 가져보세요.
추천 학습 순서
- 기본 개념 이해하기
- 간단한 블로그 만들기
- 사용자 인증 추가하기
- REST API 만들기
- 배포 방법 학습하기
반응형
'IT > Python' 카테고리의 다른 글
[Python] BeautifulSoup을 이용한 웹 스크래핑 기초 (0) | 2025.01.14 |
---|---|
[Python] TensorFlow 기초 : 딥러닝 모델 구현하기 (0) | 2025.01.14 |
[Python] Flask로 간단한 웹 어플리케이션 만들기 (0) | 2025.01.12 |
[Python] Scikit-learn으로 배우는 머신러닝 기초 (0) | 2025.01.12 |
[Python] 데이터 시각화 Matplotlib 라이브러리 이용하기 (0) | 2025.01.12 |