본문 바로가기

TIL

TIL 072023

Q: Django Template Engine은 무엇이고 어떤 기능을 제공합니까?

A:

무엇 : Django 기본 지원 템플릿 엔진

 

https://jjinisystem.tistory.com/38

 

13. Django 템플릿 엔진 - 템플릿 태그

Fat ModelStupid Template : Thin View Template Engines 몇 가지Django Template Engine : Django 기본 지원 템플릿 엔진• Jinja2 : 써드파티 엔진이었으나, 최근에 최소한의 지원이 내장됨.• Django Template Engine과 문법이

jjinisystem.tistory.com

 

기능:

  • Django 템플릿은 상속을 지원
  • 다른 템플릿 파일에 "포함"될 수도 있습니다.
  • 템플릿 파일에는 "if", "for" 등과 같은 논리 문이 포함될 수 있습니다.
  • 템플릿은 사용하기 매우 편리하며 Django의 컨트롤러 논리에서 보기 구성 요소를 분리합니다.
  • 컨트롤러 구성 요소에서 보기를 분리하면 별도의 파일을 동시에 작업할 수 있습니다. 예를 들어, 웹 디자이너는 보기 구성 요소(즉, Django 템플릿 파일)에서 작업하고 Python django 개발 프로그래머는 컨트롤러 구성 요소(views.py 파일)에서 작업할 수 있습니다. 이렇게 하면 구성 요소가 분리되므로 많은 시간이 절약됩니다.

https://hackernoon.com/how-to-use-the-django-templating-system-efficiently-i11v33bi

 

How to Use the Django Templating System Efficiently | HackerNoon

The Django template system is available to users (programmers) using the Django framework for creating web applications.

hackernoon.com

 

 

Q: Django를 통해 CRUD를 구현하는 방법에 대해서 HTTP Method와 함께 설명하시오.

A: 

  • Django는 사용자의 Request 요청에 따라 url을 조회하여 해당하는 view로 이동합니다
  • FBV, CBV에 따라 작성된 HTTP메서드를 확인합니다
  • GET 메서드를 통해 조회를하고, POST를 통해 게시글 작성등을 진행하며, PUT을 활용하여 데이터 전체를 업데이트 할 수 있고, DELETE를 통해 삭제합니다
  • PATCH를 통해 부분적인 업데이트를 진행하기도 하나, PUT의 partial=True를 통해 부분적으로 업데이트를 함으로써 PUT하나로만으로도 업데이트 관련 메서드를 진행할 수 있습니다

https://velog.io/@kti0940/Django-%EC%85%80%ED%94%84-50%EB%AC%B8-50%EB%8B%B5

 

Django 셀프 50문 50답 1~20번

파이썬이라는 개발언어에서 웹을 개발하기 위해 만들어진 프레임워크프레임워크는 프로그래밍 언어에서 복잡한 기능을 수행하기 위해 만들어진 틀이며, 다양한 기능을 구현하기 위해 사용함Dj

velog.io

 

  • django – A Python web framework that follows the model–template–views architectural pattern.
  • djangorestframework – A powerful and flexible toolkit for building Web APIs.

 

In Django, views are divided into two major types; function-based views (FBVs) and class-based views (CBVs).

  • function-based views – Are functions that leverage the @api_view decorator and return HTTP responses after processing the business logic of the API.
  • class-based views – Python objects that allow us to create views from inherited classes.

These views handle the application logic of the API and return information as responses to the client or frontend application. As a matter of best practice, we always keep the application logic in a views.py file.

 

To simplify the process, we’ll use the GenericAPIView class provided by the Django REST framework to create the views. Using the GenericAPIView class is quite similar to the regular View class since the incoming request will be delegated to an appropriate handler method such as .get() or .post().

 

  • post() – This handler will be evoked by the REST framework to add the new record to the database when a POST request hits the server at /api/notes. -> the specific url. 지정된 url.
  • get() – This handler will be called to find a record by ID and return the found record to the client or frontend app.
  • patch() – This handler will be evoked by the REST framework to find a record that matches an ID and update the fields of the found record.
  • delete() – This handler will be evoked to find a record by ID and delete the found record from the database.

https://codevoweb.com/build-crud-api-with-django-rest-framework/

 

Build CRUD API with Django REST framework - CodevoWeb

In this article, you’ll learn how to build a CRUD API with Django and Django REST framework. The RESTful API will have endpoints for performing...

codevoweb.com

 

  • 프로젝트 기술에서 Pytorch, Docker, Nginx, Postgresql .. . 등
    사용 스택, CICD, DB등 위계를 나누어 설명하면 좋겠습니다.

https://wkdus0608.tistory.com/entry/%EC%83%81%ED%99%A9%EC%97%90-%EB%A7%9E%EB%8A%94-%EA%B8%B0%EC%88%A0-%EC%8A%A4%ED%83%9D-%EC%84%A0%ED%83%9D%ED%95%98%EA%B8%B0-%EA%B8%B0%EC%88%A0-%EC%8A%A4%ED%83%9D-%EC%A2%85%EB%A5%98-%EA%B8%B0%EC%97%85%EB%93%A4%EC%9D%B4-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EA%B8%B0%EC%88%A0-%EC%8A%A4%ED%83%9D

 

상황에 맞는 기술 스택 선택하기 (기술 스택 종류 + 기업들이 사용하는 기술 스택)

비즈니스 또는 스타트업을 위해서 소프트웨어를 개발할 때 여러 가지 고려사항이 있다. 돈은 물론이고 시간 등등 하지만 이번 포스팅에서 소개할 내용은 개인 혹은 팀의 상황에 맞는 기술 스택

wkdus0608.tistory.com

사용 스택:

언어: Python, JavaScript, HTML, CSS

프레임워크: Django, Docker

라이브러리: DRF, Pytorch

패키지: django-allauth

플러그인: simple JWT

 

웹서버: Nginx, Gunicorn

웹서비스: EC2, S3, Route53

 

CICD:

GitHub Actions

 

데이터베이스:

PostgreSQL

 

PostgreSQL: 소프트웨어

PostgreSQL은 확장 가능성 및 표준 준수를 강조하는 객체-관계형 데이터베이스 관리 시스템의 하나이다.

 

도커: 응용 프로그램

도커는 리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트이다.

Docker는 DevOps 및 개발자에게 혜택을 제공하기 위해 설계된 개방형 애플리케이션 개발 프레임워크입니다.

https://www.oracle.com/kr/cloud/cloud-native/container-registry/what-is-docker/

 

Docker란 무엇인가?

Docker란 무엇이며 이 컨테이너 레지스트리는 클라우드에서 어떻게 사용되나요? 민첩한 운영 및 통합 컨테이너 보안을 활용하는 Docker가 클라우드 네이티브 애플리케이션을 위한 최고의 컨테이너

www.oracle.com

 

https://www.castingn.com/sourcing/kkultip_detail/110

 

프레임워크(framework)란?

비개발자라면 IT 프로젝트 할 때마다 들었지만 생소한 단어, '프레임워크'. 개발 생산성과 효율성을 좌우하는 프레임워크의 정의, 종류, 특징을 알아봅니다.

www.castingn.com

프레임워크: 자동차, 자전거 등 운송수단

라이브러리: 볼트, 톱, 드라이버 등 연장

 

먼 곳에 가기 위해 연장들로 운송수단을 만들어서 갈 수도 있겠지만 시간과 노력을 절약 하기위해 운송수단을 정해서 이동

 

CSS: 스타일 언어

HTML: 마크업 언어

DRF: Django 안에서 RESTful API 서버를 쉽게 구축할 수 있도록 도와주는 오픈소스 라이브러리

 

 

CI/CD (Continuous Integration/Continuous Delivery)는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법입니다. CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다.

 

https://aliencoder.tistory.com/20

 

[Python] 라이브러리(library), 패키지(package), 모듈(module)의 차이와 함수(function), 메소드(method)의 차이

주요 개념 라이브러리(library) 패키지(package) 모듈(module) 함수(function) 메소드(method) 비단 파이썬에서만 사용되는 용어는 아니지만 가끔 혼동해서 말하는 경우가 있어 정리해 둘 필요가 있을 것 같

aliencoder.tistory.com

django-allauth는 사용자 인증, 등록 및 계정 관리를 처리하기 위한 일련의 보기, 템플릿 및 도우미 기능을 제공하는 Django 패키지입니다.

 

PyTorch는 Python을 위한 오픈소스 머신 러닝 라이브러리이다.

 

Simple JWT

A JSON Web Token authentication plugin for the Django REST Framework.

플러그인(plugin) 또는 추가 기능(애드인;add-in, 애드온;add-on)은 호스트 응용 프로그램과 서로 응답하는 컴퓨터 프로그램이며, 특정한 "주문식" 기능을 제공한다.

 

EC2: 소프트웨어

아마존 일래스틱 컴퓨트 클라우드는 아마존닷컴의 클라우드 컴퓨팅 플랫폼 아마존 웹 서비스의 중앙부를 이루며, 사용자가 가상 컴퓨터를 임대 받아 그 위에 자신만의 컴퓨터 애플리케이션들을 실행할 수 있게 한다.

 

아마존 S3: 웹 사이트

아마존 S3는 아마존 웹 서비스에서 제공하는 온라인 스토리지 웹 서비스이다. 

 

Amazon Route 53는 가용성과 확장성이 뛰어난 도메인 이름 시스템(DNS) 웹 서비스입니다.

'TIL' 카테고리의 다른 글

TIL 072423  (0) 2023.07.24
TIL 072123  (0) 2023.07.24
TIL 071923  (0) 2023.07.19
TIL 071423  (0) 2023.07.14
TIL 071323  (0) 2023.07.13