Framework/Django
-
장고 템플릿(Template) 장고(Django)에서 템플릿은 웹 애플리케이션의 사용자 인터페이스를 구성하는 데 사용되는 파일이다. 템플릿은 HTML, CSS 및 일부 특수 구문을 포함하며, 동적으로 생성된 내용을 표시할 수 있도록 한다. 이를 통해 개발자는 서버에서 전달된 데이터를 템플릿에 적용하여 동적 웹 페이지를 생성할 수 있다. 장고의 템플릿 시스템은 Django의 모델, 뷰 컨트롤러(MVC) 아키텍처에서 뷰 부분에 해당한다. 템플릿은 뷰에서 전달된 데이터를 적절한 형식으로 표시하고, 사용자가 보는 웹 페이지의 모습을 결정한다. 템플릿 시스템의 설계 철학 장고에서 템플릿을 만들 때 설계 철학을 알면 보다 더 효율적인 설계를 할 수 있으므로, 장고에서 템플릿을 만들 때 추구하는 철학들에 대해 한 번..
[Django] 장고 템플릿(Template)장고 템플릿(Template) 장고(Django)에서 템플릿은 웹 애플리케이션의 사용자 인터페이스를 구성하는 데 사용되는 파일이다. 템플릿은 HTML, CSS 및 일부 특수 구문을 포함하며, 동적으로 생성된 내용을 표시할 수 있도록 한다. 이를 통해 개발자는 서버에서 전달된 데이터를 템플릿에 적용하여 동적 웹 페이지를 생성할 수 있다. 장고의 템플릿 시스템은 Django의 모델, 뷰 컨트롤러(MVC) 아키텍처에서 뷰 부분에 해당한다. 템플릿은 뷰에서 전달된 데이터를 적절한 형식으로 표시하고, 사용자가 보는 웹 페이지의 모습을 결정한다. 템플릿 시스템의 설계 철학 장고에서 템플릿을 만들 때 설계 철학을 알면 보다 더 효율적인 설계를 할 수 있으므로, 장고에서 템플릿을 만들 때 추구하는 철학들에 대해 한 번..
2024.01.02 -
장고 URL 설계 장고에서 URL(Uniform Resource Locator)은 웹 애플리케이션의 각각의 기능이나 페이지에 대한 주소를 말한다. URL은 사용자가 브라우저의 주소창에 입력하여 특정 페이지로 이동하거나, 웹 애플리케이션에서 링크를 통해 이동할 때 사용된다. 장고에서 URL은 주로 urls.py 파일에 정의되며, URL 패턴을 특정 뷰(view) 또는 액션과 연결한다. URL 패턴은 사용자의 요청이 들어왔을 때, 어떤 뷰를 호출할지를 결정하는 역할을 한다. 느슨한 결합 장고는 뷰와 URL의 느슨한 결합이라는 철학을 가지고 있다. 그래서 뷰 구현이 직접 URL을 매핑하지 않고, URL 매핑을 뷰 구현과 따로 처리하여 URL을 보다 유연하게 정의한다. 무슨 의미인지 정확히 알기 위해 먼저 스프..
[Django] 장고 URL 설계장고 URL 설계 장고에서 URL(Uniform Resource Locator)은 웹 애플리케이션의 각각의 기능이나 페이지에 대한 주소를 말한다. URL은 사용자가 브라우저의 주소창에 입력하여 특정 페이지로 이동하거나, 웹 애플리케이션에서 링크를 통해 이동할 때 사용된다. 장고에서 URL은 주로 urls.py 파일에 정의되며, URL 패턴을 특정 뷰(view) 또는 액션과 연결한다. URL 패턴은 사용자의 요청이 들어왔을 때, 어떤 뷰를 호출할지를 결정하는 역할을 한다. 느슨한 결합 장고는 뷰와 URL의 느슨한 결합이라는 철학을 가지고 있다. 그래서 뷰 구현이 직접 URL을 매핑하지 않고, URL 매핑을 뷰 구현과 따로 처리하여 URL을 보다 유연하게 정의한다. 무슨 의미인지 정확히 알기 위해 먼저 스프..
2023.12.17 -
장고 뷰(View) 장고(Django)에서 뷰(View)는 웹 애플리케이션의 사용자 인터페이스를 정의하고 클라이언트로부터 오는 요청을 처리하는 부분이다. 장고에서 추구하는 뷰에 대한 특징들에 대해 알아보는 시간을 가져보자. 단순성 뷰를 작성하는 것은 함수를 작성하는 것만큼 단순하고 직관적이어야 한다. 뷰는 요청 처리의 지휘자이다. 뷰에서 모든 처리를 하지 말 것 뷰는 비즈니스 처리를 위임할 뿐, 직접 비즈니스 로직을 구현하지는 않는다. Model/Form/Serializer를 적절히 활용해야 한다. 개발자는 함수로 처리할 수 있는 일을 하기 위해 클래스의 인스턴스를 굳이 생성하지 않아도 된다. 물론 함수(Function Based View)로 복잡한 처리를 할 수 있고, 클래스(Class Based Vi..
[Django] 장고 뷰(View)장고 뷰(View) 장고(Django)에서 뷰(View)는 웹 애플리케이션의 사용자 인터페이스를 정의하고 클라이언트로부터 오는 요청을 처리하는 부분이다. 장고에서 추구하는 뷰에 대한 특징들에 대해 알아보는 시간을 가져보자. 단순성 뷰를 작성하는 것은 함수를 작성하는 것만큼 단순하고 직관적이어야 한다. 뷰는 요청 처리의 지휘자이다. 뷰에서 모든 처리를 하지 말 것 뷰는 비즈니스 처리를 위임할 뿐, 직접 비즈니스 로직을 구현하지는 않는다. Model/Form/Serializer를 적절히 활용해야 한다. 개발자는 함수로 처리할 수 있는 일을 하기 위해 클래스의 인스턴스를 굳이 생성하지 않아도 된다. 물론 함수(Function Based View)로 복잡한 처리를 할 수 있고, 클래스(Class Based Vi..
2023.12.15 -
장고에서의 요청 처리 View 함수를 통한 클라이언트 요청 처리 1/3 import json from django.http import HttpResponse, HttpRequest def index(request: HttpRequest): # 단순 text 문자열 content = "HELLO WORLD" # HTML 문자열 # 복잡한 문자열 조합은 템플릿 엔진을 활용하면 편리하다. content = """HELLO WORLD""" # 개체를 json 문자열로 변환(직렬화, Serialize) post_list = [ {"title" : "안녕 파이썬", "author" : "Jack"}, {"title" : "안녕 장고", "author" : "Snider"} ] content = json.dumps..
[Django] 장고에서의 요청 처리장고에서의 요청 처리 View 함수를 통한 클라이언트 요청 처리 1/3 import json from django.http import HttpResponse, HttpRequest def index(request: HttpRequest): # 단순 text 문자열 content = "HELLO WORLD" # HTML 문자열 # 복잡한 문자열 조합은 템플릿 엔진을 활용하면 편리하다. content = """HELLO WORLD""" # 개체를 json 문자열로 변환(직렬화, Serialize) post_list = [ {"title" : "안녕 파이썬", "author" : "Jack"}, {"title" : "안녕 장고", "author" : "Snider"} ] content = json.dumps..
2023.12.14 -
장고의 설계 철학 마감일을 가진 완벽주의자를 위한 웹 프레임워크 장고(Django)는 "The Web framework for perfectionists with deadlines(마감일을 가진 완벽주의자를 위한 웹 프레임워크)"라는 슬로건을 가지고 있으며, 아래의 설계 철학을 중요시하고 있다. 설계 철학 의미 DRY(Don't Repeat Yourself) 코드의 중복을 피하고 재사용성을 높이는 것이 목표이다. 장고는 중복 코드를 최소화하고 모델, 뷰, 템플릿 등의 각 부분 간에 논리적 분리를 제공한다. Convention over Configuration(CoC) 장고는 개발자들이 설정할 부분을 최소화하고 대신 일반적인 설정과 구조를 기본으로 제공한다. 이는 개발자가 더 적은 결정을 내려야 하며, 더..
[Django] 장고의 설계 철학장고의 설계 철학 마감일을 가진 완벽주의자를 위한 웹 프레임워크 장고(Django)는 "The Web framework for perfectionists with deadlines(마감일을 가진 완벽주의자를 위한 웹 프레임워크)"라는 슬로건을 가지고 있으며, 아래의 설계 철학을 중요시하고 있다. 설계 철학 의미 DRY(Don't Repeat Yourself) 코드의 중복을 피하고 재사용성을 높이는 것이 목표이다. 장고는 중복 코드를 최소화하고 모델, 뷰, 템플릿 등의 각 부분 간에 논리적 분리를 제공한다. Convention over Configuration(CoC) 장고는 개발자들이 설정할 부분을 최소화하고 대신 일반적인 설정과 구조를 기본으로 제공한다. 이는 개발자가 더 적은 결정을 내려야 하며, 더..
2023.12.12 -
지난 시간에는 Django를 설치하고 프로젝트 생성하는 시간을 가져보았다. 오늘은 Django 프로젝트에서 app을 생성하는 방법에 대해 알아보는 시간을 가져보자. 장고 app 생성 Django에서 app은 애플리케이션의 모듈화 된 구성 요소로, 특정한 기능 또는 역할을 수행하는 독립된 코드와 리소스의 모음을 나타낸다. Django의 app 시스템은 Django 프로젝트를 작은, 재사용 가능한 구성 요소로 나누는 데 사용된다. 각 app은 프로젝트 내에서 독립적으로 작동하며 다른 app과 상호작용할 수 있다. Django의 app은 다음과 같은 특징을 가진다. 특징 내용 모듈화 app은 코드와 템플릿, 모델, 뷰, URL 패턴 및 정적 파일을 하나의 디렉토리 구조로 모듈화한다. 이로써 각 앱은 특정한 기..
[Django] 장고 app 생성지난 시간에는 Django를 설치하고 프로젝트 생성하는 시간을 가져보았다. 오늘은 Django 프로젝트에서 app을 생성하는 방법에 대해 알아보는 시간을 가져보자. 장고 app 생성 Django에서 app은 애플리케이션의 모듈화 된 구성 요소로, 특정한 기능 또는 역할을 수행하는 독립된 코드와 리소스의 모음을 나타낸다. Django의 app 시스템은 Django 프로젝트를 작은, 재사용 가능한 구성 요소로 나누는 데 사용된다. 각 app은 프로젝트 내에서 독립적으로 작동하며 다른 app과 상호작용할 수 있다. Django의 app은 다음과 같은 특징을 가진다. 특징 내용 모듈화 app은 코드와 템플릿, 모델, 뷰, URL 패턴 및 정적 파일을 하나의 디렉토리 구조로 모듈화한다. 이로써 각 앱은 특정한 기..
2023.11.01 -
오늘은 VSCode(Visual Studio Code)에서 Django를 설치하고 프로젝트까지 만들어보는 시간을 가져보자. VSCode에서 장고 설치하고 프로젝트 만들기 장고를 설치하고 프로젝트를 생성하기에 앞서 VSCode와 Python이 설치되어있지 않은 분들이라면 아래 게시글들을 참고하여 먼저 설치해 두도록 하자, 이미 설치가 돼있는 분들은 해당 과정을 넘어가고 다음 과정을 살펴보자. VSCode 설치하기 [IDE] VSCode(Visual Studio Code) 다운로드 및 설치방법 오늘은 VSCode의 개념과 특징 그리고 설치방법에 대해 알아보는 시간을 가져보자. 1. VSCode의 개념과 특징 VSCode(Visual Studio Code)는 마이크로소프트가 개발한 무료 및 오픈 소스 코드 편..
[Django] VSCode에서 장고 설치하고 프로젝트 만들기오늘은 VSCode(Visual Studio Code)에서 Django를 설치하고 프로젝트까지 만들어보는 시간을 가져보자. VSCode에서 장고 설치하고 프로젝트 만들기 장고를 설치하고 프로젝트를 생성하기에 앞서 VSCode와 Python이 설치되어있지 않은 분들이라면 아래 게시글들을 참고하여 먼저 설치해 두도록 하자, 이미 설치가 돼있는 분들은 해당 과정을 넘어가고 다음 과정을 살펴보자. VSCode 설치하기 [IDE] VSCode(Visual Studio Code) 다운로드 및 설치방법 오늘은 VSCode의 개념과 특징 그리고 설치방법에 대해 알아보는 시간을 가져보자. 1. VSCode의 개념과 특징 VSCode(Visual Studio Code)는 마이크로소프트가 개발한 무료 및 오픈 소스 코드 편..
2023.09.29