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

Python Django로 나만의 웹사이트 만들기: 초보자를 위한 단계별 가이드

소개

Django는 Python 기반의 무료 오픈소스 웹 프레임워크입니다. Instagram, Pinterest 같은 세계적인 서비스에서도 활용될 만큼 검증된 프레임워크로, 빠른 개발 속도와 깔끔한 설계를 지향합니다.

Django를 사용해야 하는 이유

  • 빠른 개발 속도 – 반복적인 작업을 최소화하여 짧은 시간 안에 웹 애플리케이션을 완성할 수 있습니다.

  • 풍부한 기본 기능 – 사용자 인증, 사이트맵, RSS 피드 등 자주 필요한 기능들이 이미 내장되어 있습니다.

  • 강력한 보안 – SQL 인젝션, 크로스 사이트 스크립팅(XSS), 클릭재킹과 같은 일반적인 보안 취약점을 기본적으로 방어합니다.

  • 뛰어난 확장성 – 트래픽이 매우 많은 서비스에서도 안정적으로 운영할 수 있도록 설계되었습니다.

Django의 장점을 알았으니, 이제 본격적으로 웹 애플리케이션 구축을 위한 준비 작업을 시작해 보겠습니다.

개발 환경 설정하기

웹 애플리케이션을 개발할 때는 해당 프로젝트에서만 사용하는 다양한 패키지를 설치하게 됩니다. 시스템 전체에 영향을 주지 않고 프로젝트별로 독립적인 공간을 유지하려면 가상 환경(virtual environment)을 생성하는 것이 좋습니다.

이를 위해 먼저 virtualenv 패키지를 설치합니다.

python -m pip install virtualenv

다음으로 웹사이트용 폴더(예: Django-intro)를 생성합니다. 폴더를 만든 후 터미널을 열고 cd 명령어로 프로젝트 디렉터리로 이동한 뒤 아래 명령어를 실행하여 가상 환경을 설정합니다.

virtualenv env

이 명령을 실행하면 env라는 이름의 폴더가 생성됩니다. 가상 환경에 진입하려면 다음 명령어를 사용하세요.

source env/bin/activate

터미널에 환경 이름이 괄호로 묶여 표시되면 가상 환경에 성공적으로 진입한 것입니다.

시작하기

먼저 Python 3.6 이상이 설치되어 있는지 확인하세요.

그다음 pip를 이용해 Django를 설치합니다.

python -m pip install django

설치가 정상적으로 완료되었는지 버전을 확인해 봅니다.

python -m django --version

이것으로 웹사이트를 실행하기 위한 초기 준비 단계가 끝났습니다. 이제 첫 번째 애플리케이션을 만들어 보겠습니다!

프로젝트 생성하기

가상 환경이 활성화된 상태에서 다음 명령어를 실행하면 Django 프로젝트의 기본 골격(skeleton)이 생성됩니다.

django-admin startproject Django-intro-app

생성된 Django-intro-app 폴더에 들어가면 manage.py 파일과 함께 settings.py, urls.py, wsgi.py 등의 파일이 포함된 동일한 이름의 하위 디렉터리를 확인할 수 있습니다.

주요 파일 살펴보기

  • settings.py – 프로젝트의 모든 설정이 담겨 있는 파일입니다.

  • urls.py – 웹사이트의 각종 URL 경로(라우팅)를 관리하는 파일입니다.

  • wsgi.py – 웹 서버와 애플리케이션을 연결하는 진입점 역할을 합니다.

  • 생성된 프로젝트의 이름은 Django-intro-app입니다.

  • 이후 추가하는 모든 앱은 메인 폴더 안에 고유한 이름으로 생성됩니다.

Django 작업 공간의 전체 구조를 이해했으니, 이제 실제 애플리케이션을 생성해 보겠습니다.

먼저 cd 명령어로 프로젝트 디렉터리(Django-intro-app)로 이동한 뒤 아래 명령어를 실행합니다.

python manage.py startapp first_app

이 명령을 실행하면 first_app이라는 디렉터리가 생성되며, 그 안에는 admin.py, apps.py, models.py, tests.py, views.py 파일이 포함되어 있습니다.

다음으로 Django가 first_app 애플리케이션을 인식하도록 설정해야 합니다. Django-intro-app/settings.py 파일을 열어 INSTALLED_APPS 항목에 first_app을 추가하세요.

예시 코드

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'first_app'
]

이제 Django 애플리케이션이 완성되었습니다! 만든 웹 애플리케이션을 테스트하기 위해 Django의 내장 웹 서버로 실행해 보겠습니다.

프로젝트 디렉터리에서 다음 명령어를 입력하세요.

python manage.py runserver

위 과정을 모두 올바르게 따라 했다면 https://127.0.0.1:8000/ 에서 웹사이트가 실행됩니다. 링크를 열어 직접 만든 Django 페이지를 확인해 보세요.

마무리

이제 Python 프로젝트와 Django 애플리케이션을 위한 가상 환경을 설정하는 방법을 배웠고, 나만의 Django 애플리케이션도 직접 만들어 보았습니다.

물론 여기서 끝이 아닙니다. HTML, CSS, JavaScript를 활용해 나만의 템플릿을 만들거나, URL을 수정하고 여러 페이지를 연결하는 등 Django로 할 수 있는 작업은 무궁무진합니다!

Django에 대한 더 자세한 정보와 튜토리얼은 공식 문서(https://www.djangoproject.com/)를 참고하세요.