Django Rest Framework란?
Python/Django2022. 4. 14. 11:31Django Rest Framework란?

최근 회사 내 스터디를 통해 Django Rest Framework를 사용하게 되었는데 아무것도 모르는 상태에서 무작정 로직을 구현하려 하니 복잡한 게 이만저만이 아니었다 그래서 이참에 DRF에 관해서 공부를 해보기로 했다. DRF Django 안에서 Restful API 서버를 쉽게 구축할 수 있도록 도와주는 오픈소스 라이브러리 (REST: HTTP의 URL과 HTTP method를 사용하여 API 사용 가독성을 높인 구조화된 시스템 아키텍처) Rest API 흐름 1. Model 만들기 일반적으로 우리가 Django에서 모델을 정의하는 것처럼 만들면 된다. --------- 여러가지 import 내용들 --------- class 모델명(models.Model): ... 모델 정의 def __str_..

Docker 설치해보기
Server/Docker2022. 4. 8. 16:13Docker 설치해보기

1. Docker란? Docker는 쉽게 말해서 컨테이너 기반의 오픈소스 가상화 플랫폼입니다. 예전에는 서버의 버전도 정해져있기 때문에 해당 서버에 맞춰서 여러 프로그램을 설치하는 것도 일이였고, 시간이 흐름에 따라 서버 환경이 바뀌고 MSA(MicroService Architecture)로 인하여 분할하여 관리하다 보니 점점 복잡해졌습니다. 이런 상황 속에서 Docker가 나오게 되었는데 다양한 환경을 컨테이너로 추상화 하여 프로그램의 배포 및 관리를 단순하게 해줍니다. 컨테이너와 함께 중요한 포인트로 이미지가 있는데 이미지는 컨테이너 실행에 필요한 파일과 설정값 등을 포함하고 있는 녀석입니다. 이미지란 녀석은 말그대로 정보를 모두 가지고 있기 때문에 이것저것 건드릴 필요 없이 서버가 추가되면 이미지를..

Django Rest_framework 게시판 만들기
Python/Django2022. 3. 15. 22:07Django Rest_framework 게시판 만들기

지난번 Post 모델을 작성했던 부분을 다시 수정해보았습니다. models.py from django.db import models from django.contrib.auth import get_user_model User = get_user_model() class Post(models.Model): id = models.AutoField(primary_key=True, null=False, blank=False) title = models.CharField(max_length=50) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) user = models.Foreig..

Python/Django2022. 2. 23. 11:14Django + PostgreSQL CRUD 만들기

저번 포스팅에서 Django와 PostgreSQL을 연동하는 과정을 거쳤으니 이번에는 직접 모델 정의하고 CRUD를 만들어보겠습니다. Django Model 정의 만들어진 App 안에 Models.py에서 클래스를 추가한다. from django.db import models class Post(models.Model): title = models.CharField(max_length=70, blank=False, default='') text = models.CharField(max_length=200,blank=False, default='') published = models.BooleanField(default=False) 각자 자동으로 DB에 맵핑됩니다. Serializer 클래스 생성 Post..

Django와 PostgreSQL 연동
Python/Django2022. 2. 23. 00:04Django와 PostgreSQL 연동

이번 사이드 프로젝트를 위하여 Django와 postgreSQL을 연동할 필요가 있었다. 우선 준비물은 이렇게 구성되었다. 준비물 Python 3 버전 이상 Django PostgreSQL psycopg2 dotenv https://docs.djangoproject.com/ko/4.0/intro/tutorial01/ Schema -> Tables 확인

git commit 시 여러 계정을 사용하는 경우
Etc2022. 2. 22. 19:10git commit 시 여러 계정을 사용하는 경우

회사에서 개발을 하면서 따로 사이드 프로젝트를 진행하다 보니 github과 gitlab을 함께 사용하고 있다. 평소에는 별 문제 없이 사용하다가 어느 순간 확인해보니 github에 분명 commit을 했지만 contribution이 적용되지 않았다는 것을 알게 되었는데 이유는 'user.email'이 달라서였다. git config --list 명령어를 통해서 확인해보면 user.email과 user.name을 확인할 수 있다. 만약 회사에서 사용하는 이메일이 'A' 개인적으로 사용하는 이메일이 'B' 라고 했을 때 A 이메일을 가지고 개인 프로젝트에 commit을 하니까 contribution이 적용되지 않았던 것 이럴 때는 'local'을 이용하면 된다. local이 global보다 높은 우선순위를 ..

Spring boot 패키지 구조 및 내용
Java/spring2022. 2. 22. 17:02Spring boot 패키지 구조 및 내용

spring boot의 구조를 살펴보고 각 기능별로 살펴보겠습니다. 구조 Spring boot는 목적에 따라 패키지를 따로 생성해서 프로젝트를 관리하는데 크게 나누어 보자면 다음과 같다. Controller DTO Service Repository Domain (Entity) Domain DB 테이블과 직접 맵핑되는 클래스로서 JPA 사용 시 어노테이션을 이용하여 테이블, 필드, 등을 설정한다. 또한 Domain과 Client를 직접 연동하지 않고 DTO를 통해 분리하는 이유가 있는데, Client 쪽과 연결된 부분은 잦은 변경사항이 있을 수 있는데 Domain과 연결되어 자주 변경되게 된다면 여러 클래스에 영향을 미치기 때문에 분리한다. DTO는 Domain Model을 복사한 형태로 다양한 Prese..

MongoDB에 관하여
Etc2022. 2. 21. 20:55MongoDB에 관하여

회사 내 스터디를 통해 MongoDB를 사용해볼 기회가 생겨 공부하는 겸사겸사 블로그에 정리하려고 한다. MongoDB를 알기 위해서는 DB의 종류에 대하여 알 필요가 있다. NoSQL No SQL, Not Only SQL, Non-Relational Operational Database SQL 등 의견이 분분하지만, 현재는 Not Only SQL로 풀어 설명하는 것이 다수를 차지하고 있다. 즉, SQL을 사용하는 관계형 데이터베이스(이하 RDBMS)가 아닌 데이터베이스를 의미한다. 우리가 흔히 알고 있는 관계형 데이터베이스로는 MySQL, Oracle, PostgreSQL 등이 있고, NoSQL 쪽으로는 MongoDB, Redis, HBase 등이 있다. NoSQL이 등장한 이유는 무엇이며 RDBMS와..

image