본문 바로가기

flask15

ep 11. flask로 instagram Clone 코딩 - 2 models.py 작업하기 시작하기에 앞서 전 시간에 작업한 마이그레이션 파일과 데이터베이스를 삭제한다. user.py에 다음과 같이 코드를 짜준다. from ..db import db followers = db.Table( 'followers', db.Column('follower_id', db.Integer, db.ForeignKey('User.id', ondelete='CASCADE'), primary_key=True), # 나를 팔로우하는 사람들의 id db.Column('followed_id', db.Integer, db.ForeignKey('User.id', ondelete='CASCADE'), primary_key=True) # 내가 팔로우한 사람들의 id ) class UserModel(d.. 2022. 10. 9.
ep 10. flask로 instagram Clone 코딩 - 1 프로젝트 준비 클론 코딩을 하기 위해서 프로젝트 폴더를 mkdir 사용해 만들어줍니다. cd 명령어를 사용해 만들어준 프로젝트 폴더로 들어갑니다. 이동 후 frontend 폴더와 backend 폴더를 mkdir 를 사용해 생성해줍니다. frontend 폴더에는 다음과 같이 틀을 잡아줍니다. backend 폴더로 이동해 위와같은 명령어로 가상환경을 설치해줍니다. 이후 f1-interpreter 선택 - venv를 선택해줍니다. 이후 터미널을 새로 열면 아래와 같이 가상환경이 활성화 된 것을 확인할 수 있습니다. backend폴더엔 다음과 같은 폴더들을 생성해줍니다. 개발에 필요한 폴더들을 다 생성해줬음으로 프로젝트에 필요한 라이브러리들을 설치해줍니다. pip install flask pip install .. 2022. 9. 22.
ep 10. CORS, SSR, CSR이란? CORS(Cross-Origin Resource Sharing)란? 브라우저에선 cross-origin HTTP요청들을 보안을 위해 제한하기 때문에 요청을 하기 위해 서버의 동의가 필요하다. 허용하고 거절하는 이런 메커니즘을 HTTP-header를 통해 가능하다. 이를 CORS 라 하는 것이다. 쉽게 말하자면 브라우저에서 cross-origin 요청을 안전하게 수행할 수 있도록 해주는 매커니즘을 뜻한다. 여기서 cross-origin이란 프로토콜, 도메인, 포트번호 중 한가지라도 다른 경우를 말한다. SSR(Server Side Rendering)이란? 단어의 뜻 그대로 서버쪽에서 렌더링 준비를 끝마친 상태로 클라이언트에 전달하는 방식이다. 단계를 살펴보면 User(사용자)가 Website에 요청을 보낸.. 2022. 9. 20.
ep 9. marshmallow 로 Python 에서 직렬화 / 비직렬화 처리하기 marshmallow로 직렬화와 비직렬화를 처리하기 전에 우리는 직렬화와 비직렬화가 무엇인지 알 필요가 있다. 직렬화란? 객체의 내용을 바이트 단위로 변환해 파일 or 네트워크를 통해 송수신이 가능하도록 만드는 것 비직렬화란? 직렬화된 파일을 다시 객체의 형태로 만드는 것 직렬화를 하는 이유? 시스템이 종료되어도 사라지지 않는 데이터이기에 메모리에만 상주되어 있는 객체 데이터를 영속화 해야할 때 사용됨 marshmallow Schema 클래스 dump_only : 역직렬화 중 건너뛸 필드, read_only(읽기 전용) load_only : 직렬화 중 건너뛸 필드, write_only(쓰기 전용) many : 오브젝트가 collection이면 True로 설정해야 객체가 리스트에 직렬화 된다 marshma.. 2022. 9. 11.