2021. 11. 3. 22:55ㆍ작업/Flask
Blueprint : 길어진 코드를 모듈화해줘서 수정 개발과 유지보수에 용이하도록 해주는 것
(blueprint 사용하지 않으면 @app.route() 수 = API 수 매우 많음.)
app.py는 오로지 서버 실행에만 집중 가능
Blueprint는 Flask랑 매우 비슷한 문법
실습 1 Blueprint로 서버 코드 분리하기
Jinja 템플렛 : python에서 가장 많이 사용되는 템플릿. 서버에서 받아온 데이터를 효과적으로 보여줌
html내에서 python문법을 사용할 수 있다.
python 파일에서 정의한 변수를 jinja html에서 나타내기 {{어쩌구}}
jinja에서 list를 넘겨주고, 반복문 사용 {% endfor %}로 끝내줘야한다.
jinja에 dictionary 넘겨주기. key값으로 get한다.
실습 2 Jinja Template 사용해서 화면에 데이터 나타내기 - 단일 데이터
실습 3 Jinja Template 사용해서 화면에 데이터 나타내기 - 리스트 데이터
실습 4 Jinja Template 사용해서 화면에 데이터 나타내기 - 딕셔너리 데이터
실습 5 Jinja Template 사용해서 화면에 데이터 나타내기 - 혼합형 데이터
CRUD 작업과 HTTP method, DB SQL 명령어
Create - POST - INSERT
Read - GET - SELECT
Update - PUT, PATCH, POST - UPDATE
Delete - DELETE - DELETE
실습 6 게시글 생성 및 읽기 return redirect(url_for(html이름)) return render_template('어쩌구.html', 변수 = 어쩌구 )
url_for('index') 는 index 함수로 가기 떄문에 route('/')로 간다.
실습 7 게시글 수정 및 삭제 request.form['name'] request.form['context']
Authentication(인증) vs Authorization(권한)
인증 = 사용자가 누구인지 확인하는 과정 ex 로그인
쿠키
쿠키는 웹 브라우저(클라이언트) 에 저장된다. 쿠키는 내 컴퓨터에 저장되는 게 아니다.
세션는 서버에서 관리하는 데이터, 클라이언트한테 고유한 ID를 부여한다
로그인
로그아웃
실습 8 로그인 기능 구현 if name in userinfo: session['login']=True userinfo[request.form['username']] = request.form['password']
로깅 : 프로그램이 작동할 때 발생하는 이벤트를 추적하는 행위
(문제를 파악, 유지보수, 발생한 에러를 추적)
실습 9 로깅 구현 app.logger.error(err)
'작업 > Flask' 카테고리의 다른 글
21.11.07 7주차 모의테스트 (0) | 2021.11.07 |
---|---|
21.11.05 7주차 2-3 REST API와 테스팅 (0) | 2021.11.06 |
21.11.05 7주차 2-1, 2-2 RDB로 리소스 관리 및 저장하기 & SQL Alchemy (0) | 2021.11.06 |
21.11.05 jinja와 flask 사용 배달의 토끼 필기 (0) | 2021.11.05 |
21.11.03 7주차 1-1 Flask 시작하기 (0) | 2021.11.03 |