플라스크는 웹페이지를 찍어내는 공장이다
터미널 창에 pip install falsk를 입력한다
코드를 실행해보면 http주소가 나온다
주소로 들어가보면 'Hello,World'라고 적힌 웹 페이지가 나온다
flask의 개발환경은 Glitch.com에서 진행하였다
Glitch.com에서 랜덤한 수가 출력되도록 코딩해보았다
- @app.route("/")로 '/', '/create', '/update'에 대응할수 있도록 코드를 적고 주소창에 입력하면 웹 페이지가 활성화된다
- 이것을 라우팅이라고 한다
- VS Code에서 만들었던 웹페이지를 Glitch.com에서 플라스크로 만들어보았다
(Flask에는 html파일이 없기때문에, 링크에 '.html'이 아닌'/read/1/' 로 적었다)
- read 페이지도 만들었다
- 이 때, 코드가 중복되면 타이틀과 내용을 사전형으로 정리한 후, 정리된 객체중 원하는 객체를 꺼내 쓸 수 있다
- liTags라는 변수를 만들고, topocs의 원소들을 꺼내 쓴다
- 단, for in 구문에 'liTags+'가 없으면, 제일 끝에 있는 행(id:3)만 표현된다
- 그리고 링크를 달아준다
- 하지만, '/read/1/'만 작동되고, '/read/2/'는 라우터 설정이 되어있지 않기 때문에 작동되지 않는다
- '/read/3/'까지 작동되게 하려면 일일이 라우터 설정을 해줘야하지만,
숫자 부분을 변수처리 하여 간편하게 설정해줄 수 있다
- 이 때 지정된 id값은 문자로 지정되어있다
여기서, int를 넣어주면 '정수'라는 의미를 부여할 수 있다- 그리고 앞서 정리한 사전형으로 제목을 만들어준다
- title과 body를 초기화하고, "만약, topic의 'id'가 < id>와 같다면, title과 body 값을 추출하세요"를 코딩하면 된다
더욱 깔끔한 코딩을 위하여 중복되는 부분을 간략히 해준다
여기서는 index( ) 와 read(id)의 내용을 정리한다
- index( )아래의 내용을 복사한다
- index( ) 위에 def template( )를 입력하고, 그 아래에 붙여넣는다
- index( ) 아래의 내용을 return template( )로 바꿔 채운다
- read(id) 아래의 내용도 함수로 정리해준다
완성된 코드
구글 검색으로 연결해주는 기능을 추가한다
- create 링크를 만들어준다
- create를 누르면 create 화면이 출력된다
- create 역시 template로 만든다
- 그리고 입력창을 넣어준다
- 이 때, p 태그를 사용해 입력창을 깔끔하게 배치할 수 있다
- 그리고 입력값을 서버로 보낼수 있는 버튼을 만들어준다
- 여기서, type은 button이 아니라, submit이다
- 입력값을 어디로, 어떻게 보낼것인가를 지정해주는 태그인 form 태그로 감싸준다
- action태그와 구글 주소를 입력하면, create를 눌렀을때 구글 화면으로 이동한다
- title 창의 입력값을 검색하도록 만들려면, name="q"를 입력해주면 된다
- 그리고 name="title"와 name="body"를 입력하고 주소를 /create/로 바꿔주면, 입력값의 경로가 생성된다
오늘 강의는 전체적으로 어려웠다
이론 강의부터 코딩까지
이론은 강의를 들을때에는 이해가 되지만, 혼자 정리하려고 하면 선뜻 정리가 잘 되지 않고,
코딩은 하나하나 고칠때마다 오류가 나고
강의 내용을 따라오는데 꽤 벅찼다
녹화된 강의를 꼼꼼하게 돌려보고, 다시 처음부터 새로 코딩해보고, 개발일지 쓰면서 마지막으로 정리해보는 식으로 복습하면서 이해도를 높여가야겠다
학습 시작에 앞서 강사님이 미리 오늘 배울 내용은 많이 어려울 것이라고 언급하셨다
이 Flask는 백엔드 (웹 및 서버관리)와 관련된 기능인데 기존에 배운 내용들로는 거대한 웹사이트를 운영하기 까다롭지만,
오늘 배운 내용으로 훨씬 수월하게 운영할수 있겠다고 생각되었다
하지만, 어떤 상황에 어떤 코드를 써야 할 지 아직 감이 잡히지 않아 여전히 공부가 많이 필요하다는 느낌도 많이 받았다
프로그래밍 입문자로서는 아직 많이 어렵지만, 잘 활용할 수 있다면