[튜토리얼] Flask I : Basic

(프로젝트를하거나 게임을 한동안) 쉬는 시간이 있기 때문에 Flask (Python)를 사용한 웹 개발에 대한이 기사 (또는 아마도 기사)를 쓰기로 결정했습니다. 나는 Flask가 무엇인지 설명하기 위해 멈추지 않을 것입니다. 그들은 이미 Hypertext에서 그것을 설명하고 나보다 훨씬 더 잘 설명합니다.

Python 및 HTML5에 대한 지식이없는 경우 계속하지 않고 먼저 Python 및 HTML5의 설명서와 설명서를 읽는 것이 가장 좋습니다.

설치

이 시점에서 (운영 체제에 관계없이) 이미 Python이 설치되어 있어야하므로 Flask 만 설치하면됩니다.

$ sudo pip install Flask

쉬운가요?

안녕하세요 월드

Flask에서 다음과 같은 방법으로 고전적인 "Hello World"를 만들 수 있습니다.

플라스크 1

코드를 hello.py로 저장하고 실행합니다.

$ python hello.py
* Running on http://localhost:5000/

이제 우리의 응용 프로그램은 http : // localhost : 5000 /에서 실행됩니다.

아주 쉽죠?

간단한 블로그

0 단계 : 폴더 생성

시작하기 전에 애플리케이션을위한 다음 폴더가 필요합니다.

carpetas

프로젝트 폴더는 원하는 이름을 가질 수 있으며 응용 프로그램이있는 폴더 일뿐입니다. 정적 폴더에는 HTTP를 통해 사용자가 사용할 수있는 파일이 있습니다. 여기에 CSS와 JS 파일을 넣어야합니다. 템플릿 폴더는 애플리케이션의 템플릿 (html5)이있는 곳입니다.

XNUMX 단계 : 데이터베이스 스키마

먼저 데이터베이스 스키마를 생성합니다. 이 애플리케이션의 경우 데이터베이스 만 필요합니다. Project 폴더의 "schema.sql"파일에 다음 코드를 입력하면됩니다.

계획

이 체계는 입력이라는 단일 테이블로 구성되며이 테이블의 각 행에는 ID, 제목 및 텍스트가 있습니다. 이 ID는 자동 증분 정수 및 기본 키이고 나머지 두 개는 문자열입니다.

XNUMX 단계 : 초기 애플리케이션 코드

이제 회로도를 얻었으므로 애플리케이션 모듈을 만들 수 있습니다. 프로젝트 폴더 안에 있어야하는 flaskr.py라고합시다. 시작하기 위해 필요한 가져 오기와 구성 섹션을 추가 할 것입니다. 작은 응용 프로그램에서는 구성을 수행 할 모듈에 직접 둘 수 있습니다. 그러나 가장 좋고 가장 정확한 방법은 .ini 또는 .py 구성 파일을 만들고로드 한 다음 거기에서 값을 가져 오는 것입니다.

flaskr.py 파일에서 :

py

세션을 안전하게 유지하려면 secret_key가 필요합니다. 이 키를 현명하게 선택하십시오. 디버그 플래그는 대화 형 디버거를 활성화하거나 비활성화합니다. 사용자가 서버에서 코드를 실행할 수 있으므로 프로덕션 시스템에서 디버깅을 그대로 두지 마십시오!

이제 응용 프로그램을 만들고 flaskr.py에서 구성을 시작할 수 있습니다.

앱

지정된 데이터베이스에 쉽게 연결할 수있는 방법도 추가 할 예정입니다. 요청시 연결을 여는 데 사용할 수 있습니다. 이것은 나중에 유용 할 것입니다.

table4

마지막으로 파일을 독립적 인 응용 프로그램으로 실행하려면 서버가 실행할 파일 끝에 줄을 추가합니다.

table5

이를 통해 문제없이 응용 프로그램을 시작할 수 있습니다. 이제 다음 명령을 사용합니다.

$ python flaskr.py

URL과 함께 서버가 시작되었음을 나타내는 메시지가 표시됩니다.

URL에 액세스하면 아직 웹 사이트가 없기 때문에 404 오류가 발생합니다. 그러나 우리는 나중에 그것에 초점을 맞출 것입니다. 먼저 데이터베이스를 작동시켜야합니다.

XNUMX 단계 : 데이터베이스 생성

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   Faustino

    안녕하세요, 기사 주셔서 감사합니다. 모든 경로를 함께 장고 스타일로 만드는 것에 대해 어떻게 생각하십니까? Express, Flask 또는 Bottle 스타일의 각 기능에 대한 경로가 있으면 어떤 이점이 있습니까?

    1.    이반 몰리나 레 볼레도

      나는 Django를 시도하지 않았지만 (원한다면 죽여라) 누구의 프로그램이든 편의를위한 것이라고 말할 수 있습니다. (틀 렸으면 말해줘)

  2.   이반 몰리나 레 볼레도

    기사가 완성되지 않았습니다 !! 누가 감히 게시 했습니까? 디:

  3.   프로듀서이자 유일한 멤버 인 Guille

    "conciste"escape와 같은 맞춤법 오류, 같은 저자는 "Corriganme"이라고 말하고 있습니다. 맞춤법 검사기를 설치하고 일부 단어 아래에 나타나는 빨간색 줄무늬를 보면 좋을 것입니다. 그가 글을 다 쓰고 검토하지 않은 것도 사실이다.

  4.   erm3nda

    나는 "혹은 뭔가"페이지를 넘기기 위해 다음 버튼을 찾는 멍청이처럼 보이는 유일한 사람이 아니라고 생각한다.

  5.   리 누그

    바라건대 더 많이 오세요, 아주 잘 했어요