>백엔드 개발 >파이썬 튜토리얼 >Django 시작하기: Python 웹 프레임워크에 대한 전체 소개

Django 시작하기: Python 웹 프레임워크에 대한 전체 소개

WBOY
WBOY원래의
2023-06-22 10:20:083168검색

Django 시작하기: Python 웹 프레임워크 전체 소개

웹 개발 세계에서는 개발을 위해 프레임워크를 사용하는 것이 일반적인 방법입니다. 프레임워크는 공통 구조, 기능 및 규칙을 제공하는 코드 구성 방법으로, 이를 통해 개발자는 완전한 기능을 갖추고 안정적이며 유지 관리가 쉬운 웹 애플리케이션을 신속하게 구축할 수 있습니다. Python에는 우수한 웹 프레임워크가 많이 있으며, Django는 현재 다양한 웹 프로젝트 개발에 널리 사용됩니다. 이 글은 Django 프레임워크에 대한 입문 지식을 소개하고 초보자가 빠르게 시작할 수 있도록 도와줍니다.

  1. Django란 무엇입니까

Django는 Python으로 작성된 웹 애플리케이션 프레임워크입니다. 그 목표는 고품질 웹 애플리케이션을 개발하는 프로세스를 가능한 한 쉽고 빠르며 재미있게 만드는 것입니다. Django는 MVC(Model-View-Controller) 디자인 패턴을 따르며 개발자가 효율적인 웹 애플리케이션을 구축하는 데 도움이 되는 많은 강력한 도구와 기능을 제공합니다.

  1. Django 프레임워크의 장점

Django 프레임워크에는 다음과 같은 장점이 있습니다.

  • 높은 모듈성: Django 프레임워크는 느슨한 결합의 설계 원칙을 기반으로 하며 다양한 모듈을 작성할 수 있습니다. 독립적으로 테스트 및 디버깅되어 개발자 효율성이 향상됩니다.
  • 쉬운 확장: Django 프레임워크는 쉽게 확장하고 사용자 정의할 수 있는 풍부한 플러그인과 모듈을 제공합니다.
  • 높은 보안: Django 프레임워크에는 XSS(교차 사이트 스크립팅) 보호, CSRF(교차 사이트 요청 위조) 보호, 비밀번호 해싱 등과 같은 많은 보안 기능이 내장되어 있어 개발자가 안전한 웹 애플리케이션을 구축할 수 있습니다. .
  • ORM(Object Relational Mapping) 지원: Django 프레임워크에는 데이터베이스 작업을 용이하게 할 수 있는 ORM 시스템이 내장되어 있습니다.
  • 내장 백엔드 관리 시스템: Django 프레임워크에는 개발자가 콘텐츠 관리 시스템(CMS)을 쉽게 개발할 수 있는 풍부한 백엔드 관리 시스템이 함께 제공됩니다.
  1. Django 설치 및 구성

Django를 사용하기 전에 먼저 Python을 설치해야 합니다. Django 프레임워크는 명령줄을 통해 설치할 수 있습니다.

pip install Django

설치가 완료된 후 다음 명령을 사용하여 설치 성공 여부를 확인할 수 있습니다.

django-admin version

버전 번호가 출력되는 경우 , 설치가 성공적으로 완료되었습니다.

  1. Django 웹 프레임워크의 기본 구성 요소

Django의 구성 요소는 다음과 같은 부분으로 나눌 수 있습니다.

  • 모델 레이어(Model): Django MVC의 M 레이어로 데이터의 저장 및 운영을 담당합니다.
  • View 레이어(View): Django MVC의 V 레이어로, HTTP 요청을 처리하고 HTTP 응답을 반환하는 역할을 담당합니다.
  • 템플릿 레이어(Template): Django MVC의 C 레이어로, 데이터 렌더링과 HTML 응답 생성을 담당합니다.
  • URL 라우팅(URLconf): 해당 뷰 기능에 HTTP 요청을 배포하는 역할을 담당합니다.
  1. Django 프로젝트 생성

Django를 사용하여 웹 애플리케이션을 생성하려면 먼저 Django 프로젝트를 생성해야 합니다. 다음 명령을 사용하여 mysite라는 Django 프로젝트를 만듭니다.

django-admin startproject mysite

명령이 실행되면 현재 디렉터리에 Manage.py라는 파일과 mysite라는 파일이 포함된 mysite라는 디렉터리가 생성됩니다. Manage.py는 Django 프로젝트의 다양한 작업을 관리하는 데 사용되는 Django 명령줄 도구입니다.

  1. Django 애플리케이션 생성

Django 프로젝트에서 각 기능이나 비즈니스 로직은 애플리케이션으로 간주될 수 있습니다. Django는 여러 애플리케이션 생성을 지원하고 이를 mysite 디렉터리에서 완전한 웹 애플리케이션으로 결합합니다. 다음 명령을 실행합니다. myapp이라는 애플리케이션을 생성하려면:

python manage.py startapp myapp

명령을 실행한 후 mysite 디렉터리에 myapp이라는 하위 디렉터리가 생성되며 여기에는 애플리케이션의 코드 및 관련 구성 파일이 포함됩니다.

  1. Django 애플리케이션용 뷰 함수 작성

View 함수는 HTTP 요청을 처리하고 HTTP 응답을 반환하는 Django 애플리케이션의 핵심 구성 요소입니다. 보기 기능은 myapp 디렉터리의 views.py 파일에 작성할 수 있습니다. 예를 들어, 다음 파일에 "Hello World!" 문자열을 반환하는 뷰 함수를 작성합니다.

from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello World!")

위 코드에서는 HTTP 응답을 생성하는 데 사용되는 HttpResponse 클래스를 사용합니다. 이 보기 함수를 URL과 연결하려면 다음 구성이 필요합니다.

from django.urls import path
from . import views

urlpatterns = [
    path('hello/', views.hello, name='hello'),
]

위 코드는 경로 함수를 사용하여 /hello/ URL을 hello라는 보기 함수에 연결합니다.

  1. Django 웹 프레임워크 템플릿

Django 프레임워크는 데이터와 뷰를 분리하는 템플릿(Template)을 지원하여 코드를 더 명확하고 유지 관리하기 쉽게 만듭니다. 템플릿은 동적 데이터, 루프, 조건문 등을 포함할 수 있는 HTML 파일입니다.

Django 템플릿을 사용하려면 다음을 수행해야 합니다.

  • myapp 디렉터리에 template라는 하위 디렉터리를 만듭니다.
  • 다음 디렉터리에 hello.html이라는 HTML 템플릿 파일을 만듭니다.
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Hello World!</title>
</head>
<body>
    <h1>{{msg}}</h1>
</body>
</html>

위 코드에서 이중 괄호 "{{}}" 구문은 템플릿을 렌더링할 때 사용되는 템플릿의 변수를 나타내는 데 사용됩니다. 필요할 때 교체하십시오.

뷰 함수를 작성하고 렌더링을 위해 데이터를 템플릿에 전달합니다.

from django.shortcuts import render

def hello(request):
    data = {'msg': 'Hello World!'}
    return render(request, 'hello.html', data)

템플릿 렌더링을 위해 렌더링 함수를 사용하고 데이터 사전을 템플릿에 매개변수로 전달합니다.

  1. Django数据库操作

在Django项目中,Django提供了一个内置的ORM框架,它方便开发者进行数据库操作。在mysite目录下的settings.py文件中可以进行数据库配置,该文件包含了DATABASES配置节点,该节点用于配置数据库连接相关信息。

在myapp目录下的models.py文件中可以定义数据库模型,例如定义一个名为Person的数据模型类:

from django.db import models

class Person(models.Model):
    name = models.CharField(max_length=30)
    age = models.IntegerField()

以上代码中,使用了CharField和IntegerField数据类型来定义模型的字段。使用以下命令可以在数据库中创建该数据模型对应的表:

python manage.py makemigrations
python manage.py migrate

以上命令会根据models.py文件中的定义,在数据库中创建相应的数据表。

  1. Django应用程序的注册

在mysite目录下的settings.py文件中可以进行应用程序注册,将创建的应用程序添加到INSTALLED_APPS配置节点中:

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

添加应用程序到INSTALLED_APPS节点后,需要在myapp目录下创建名为admin.py的文件,用于创建管理界面。

  1. Django自带后台管理系统

Django提供了一个功能强大的后台管理系统,该系统可以自动根据模型创建对应的管理界面。在myapp目录下的admin.py文件中可以注册模型以创建管理界面,例如:

from django.contrib import admin
from .models import Person

admin.site.register(Person)

以上代码中,使用了register函数来注册Person数据模型,该函数会自动创建对应的管理界面。

  1. Django应用程序的启动

在编辑好Django应用程序之后,通过以下命令即可启动该应用程序:

python manage.py runserver

命令执行后,Django应用程序会运行在本地服务器上,可以在浏览器中访问http://localhost:8000/hello/ URL查看效果。

  1. 结语

Django框架是一个完整的Python Web框架,拥有强大的工具和功能来帮助开发者构建高效、稳定的Web应用程序。本文介绍了Django框架的基础知识,涉及了Django项目的创建、模型定义、视图函数编写、模板使用和后台管理系统等方面。通过本文的学习,读者可以快速入门并掌握Django框架的基础知识,进一步深入学习和应用该框架。

위 내용은 Django 시작하기: Python 웹 프레임워크에 대한 전체 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.