Flask에서 환경 변수 작업

다른 글을 시청하신 것을 환영합니다.집중적인 독자가 되어 주셔서 감사합니다.너에게 더 많은 지식을 주고, 더 많은 기술을 배워서, 너를 더욱 좋아지게 할 것이다.우리가 오늘의 글을 시작하기 전에, 우리는 우리가 함께 배운 것을 간단명료하게 회고할 것이다.

파이썬이란?


파이톤은 널리 사용되고 해석적이며 대상을 대상으로 하는 동적 의미를 가진 고급 프로그래밍 언어로 유니버설 프로그래밍에 사용된다.
이것은 Guido van Rossum이 "취미"프로그래밍 프로젝트로 만든 것입니다.

왜 우리는 구렁이를 좋아합니까?

  • 그것은 간단하고 직관적인 언어이기 때문이다.
  • 프로그래밍 언어를 시작합니다.그러므로 모든 사람이 그의 성장에 기여할 수 있다.
  • 간단하고 알기 쉬운 코드;
  • 일상 업무에 적합하고 개발 시간이 빠르다
  • 파이톤의 용도는 무엇입니까?


    파이톤은 많은 분야에서 자신의 응용 분야를 가지고 있는데 이런 분야는 다음과 같이 포함되지만 이에 국한되지 않는다.
  • 네트워크 어플리케이션
  • 데이터 과학
  • 모바일 어플리케이션
  • 빅데이터
  • 인공지능
  • 자동화
  • 테스트
  • Python에 대해 더 자세한 설명을 하려면 언제든지 이 자원을 보십시오.
    이 글을 다 읽은 후에 우리는 파이톤에서 기억할 만한 개념들을 이해할 것이다.초보자에 대한 상세한 설명은 없을 수도 있지만, 중급과 전문의python 프로그래머에게 복습을 제공할 것이다.초보자도 이해할 수 있어, 좋은 소식!!

    데이터 형식


    문자는 문자 자체가 그 값을 결정하는 데이터로 파이톤은 기존의 문자를 제공한다.
    파이썬에서 흔히 볼 수 있는 텍스트는 다음과 같습니다.
  • 디지털 문자
  • 문자열 텍스트
  • 특수 문자 없음
  • 브리 문자
  • 집합 문자
  • 간단하게 말하자면, 문자는 프로그래밍할 때 변수나 상수에 분배되는 원시 데이터이다.

    Python의 산술 연산


    Python은 산술 연산에 대한 기존 지원을 지원합니다.이것을 사용하면 표현식과 연산자를 사용하여 이 동작을 수행할 수 있습니다.

    변량


    변수는 메모리에 값을 저장하기 위해 보존된 이름의 위치입니다.
    작업의 결과를 저장하려면 변수라는 용기를 사용하십시오.변수 이름을 지정할 때 여기에 정의된 PEP 표준을 따라야 합니다PEP 8 --Style Guide for Python Code.

    코멘트


    주석은 코드에 더 많은 정보를 추가하는 데 사용할 수 있습니다.실행할 때 삭제됩니다.인류 독자는 소스 코드에 남겨진 정보를 통해 읽을 수 있다.Python의 주석은 한 줄의 텍스트로, 한 줄의 주석은 #로 시작하고, 여러 줄의 주석은 """로 시작한다

    기능


    함수는 주어진 임무를 수행하는 관련 문장이다.따라서 함수를 몇 번 호출하든지, 언제 호출하든지, 이 문장들은 이 작업을 수행할 것이다.
    함수는 우리가 프로그래머가 되는 것을 돕는다.
  • 코드 중복 방지
  • 코드가 더 뚜렷하고 읽기 쉽다
  • 큰 문제를 작은 덩어리로 분해한다.
  • 세 가지 주요 기능 유형이 있다.
  • 내장 기능
  • 사용자 정의 함수
  • 사전 장착 모듈 기능
  • 함수에 대한 자세한 지침은 이 자원을 보십시오.

    다행이다. 파이톤에 대한 회고로 돌아온 것을 환영한다.파이톤이 무엇인지, 그것을 어떻게 사용하는지 익숙해질수록 파이톤의 프로그래머가 될 수 있다는 것을 명심하라.

    Every expert was once a beginner.


    Python의 웹 개발


    따라서 파이톤의 한 응용 분야는 웹 개발이다.너는 그것으로 기능이 강하고 속도가 빠른 웹 응용 프로그램을 만들 수 있다.이렇게 하는 과정에서 파이톤의 웹 개발을 돕기 위해 많은 도구와 프레임워크를 개발했다.
    그 중 일부는 다음과 같지만 이에 국한되지 않는다.
  • Django
  • 플라스크
  • 피라미드
  • (다음 그림은 Python을 사용한 웹 프레임워크 목록을 보여 줍니다)

    Flask 프레임워크에 중점을 두겠습니다.FLASK에 대한 설명은 공식 문서를 참조하십시오.
    Official Flask Documentation
    Python 웹 개발을 시작하는 방법을 빠르게 이해하려면 다음을 고려하십시오.
    일단 flask의 기본 개술을 익히면, 우리는 오늘의 주제에 들어갈 것이다.!!!얼마나 좋은 소개야!!!네가 이 문장을 좋아하길 바란다.이제 다시 초점을 맞추자.

    최소한의 플라스크 응용을 제공한다. 예를 들면;
    
    from flask import Flask
    
    app = Flask(__name__)
    
    @app.route('/')
    def hello_world():
        return 'Hello World, dear Friend!'
    
    
    @app.route('/page/<int:page_num>')
    def content(page_num):
        return f'<h1>Yoo.. It is your page {page_num}</h1>'
    
    if __name__ == '__main__':
        app.run(host='',port='',debug=True)
    
    
    최소한의 응용 프로그램은 다음 순서에 따라 실행할 수 있습니다. (익숙하실 수도 있습니다.)
    광희절에
    export FLASK_APP=app.py
    flask run
    
    다른 경우,flask 프로그램을 실행할 호스트와 포트 번호, 환경, 디버깅 모드 등을 지정해야 할 수도 있습니다. 이 모든 것을 export command 위에 포함해야 합니다.
    시간의 흐름에 따라 단조롭고 무미건조해질 수 있습니다. 멋진 프로젝트를 개발했기 때문에, 명령을 되돌려 보내기 위해 위쪽 화살표 키를 여러 번 눌렀습니다. (bash 사용자, 내 뜻을 알고 있습니다.)
    우리의 목표는 시간을 절약하는 것이다. flask 프로그램을 실행할 때, 우리는 이렇게 하기만 하면 된다.
    광희절에
    flask run
    
    export command에 추가된 변수를 환경 변수라고 합니다.이 변수들은 flask 프로그램에서 프로젝트 서비스에 사용됩니다.

    환경 변수의 예는 다음과 같다.

  • 플라스크 ENV
  • 플라스크 테스트.
  • 플라스크 실행 추가 파일
  • 플라스크 실행 호스트
  • 플라스크 출구
  • 플라스크 운행증서
  • 플라스크 운행키
  • 이것들은 프레임 정의의 기본 환경 변수입니다.지정하지 않으면 기본값이 사용됩니다.

    사용자 정의 변수


    또한 응용 프로그램을 데이터베이스에 연결하려면,python 코드에 인증서를 하드코딩해야 합니다. 이것은 추천하지 않습니다.
    간단한 예는 다음과 같다.
    from flask import Flask
    app = Flask(__name__)
    
    app.config[MYSQL_USER]="your_username"
    app.config[MYSQL_HOST]="localhost"
    app.config[MYSQL_DB]="my_appdb"
    app.config[MYSQL_PASSWORD]="your_password"
    
    @app.route('/')
    def index():
        return {'Message': 'Hello World'}
    
    
    만약 다른 사람과 함께 큰 프로젝트를 하고 있다면, 이런 하드코딩 인증서는 이상적이지 않다
    만약 당신이 엄격한 암호 정책을 준수하지 않는다면, 어느 곳에서든지 암호를 사용하세요...너 까였어!너는 방금 전 세계와 너의 비밀번호를 공유했다.

    그러면 우리는 소병 환경 변수를 어떻게 처리합니까?


    flask 환경 변수를 자동으로 불러오는 방법을 볼 수 있습니다.flask 프로그램을 실행할 때마다 환경 변수를 설정하는 것에 싫증이 났기 때문에 여기에 왔습니까?FLASK APP 또는 FLASK ENV usingexport command과 같은 변수입니다.내가 도와줄게.

    1단계:python dotenv 설치


    당신의 가상 환경에서 달리기;
    pip install python-dotenv
    
    내가 강조하고자 하는 것은 반드시 시스템에서 가상 환경을 사용하여 주요 Python 설치를 파괴하는 것을 방지해야 한다는 것이다.가상 환경을 만드는 방법을 다시 보려면 이 설명서를 참조하십시오.Creation of Virtual Environments

    두 번째 단계: 하나를 만듭니다.env와프로젝트 루트 폴더의 flaskenv 파일


    광희절에
    touch .env
    touch .flaskenv
    

    3단계: 플라스크 환경 변수를 넣는다.프라스칸프


    당신의 용례에 따라, 이것은 당신에게 어떤 내용을 포함하는지 지도할 것입니다.
    들어와.프라스칸프
    //this is the .flaskenv file
    FLASK_ENV - Controls the environment.
    FLASK_DEBUG - Enables debug mode.
    FLASK_RUN_EXTRA_FILES - A list of files that will be watched by the re-loader in addition to the Python modules.
    FLASK_RUN_HOST - The host you want to bind your app to.
    FLASK_RUN_PORT - The port you want to use.
    FLASK_RUN_CERT - A certificate file for so your app can be run with HTTPS.
    FLASK_RUN_KEY - The key file for your cert.
    
    예를 들면 다음과 같습니다.FLASK_APP=app.py잘했어.프로그램을 즉시 실행하려면 실행하기만 하면 된다.

    너무 빨라...정확하다네, 그래서 flask 환경 변수가 부족한 것을 찾지 않고 프로그래밍에 전념할 수 있습니다.

    그럼 제가 비밀리에 정의한 환경 변수는요?


    네, 지금부터 시작하겠습니다.이 지침을 따르다.

    첫걸음비밀리에 정의된 환경 변수를 넣습니다.컨디션


    다음을 포함할 수 있습니다.
  • 데이터베이스 로그인 자격 증명
  • API 키

  • (기타 제외)
  • 들어와.컨디션
    //This is the .env file
    MYSQL_USER=root
    MYSQL_PASSWORD=my_mysql_password
    MYSQL_DB=userdb
    MYSQL_HOST=localhost
    SECRET_KEY=topsecretkey
    API_KEY=donotsharethisapikeywithanyone
    
    

    2단계: 새 설정을 만듭니다.py 파일


    (이 변수는 자동으로 제공되지 않기 때문에, 우리는 이 settings.py 파일을 통해 그것들을 불러와야 한다)
    설정에 있습니다.py
    //This is the settings.py file
    
    from os import environ
    SECRET_KEY=environ.get('SECRET_KEY)
    API_KEY=environ.get('API_KEY')
    MYSQL_USER=environ.get('MYSQL_USER')
    //add any more variables you have
    
    
    주의: 일치성을 유지하기 위해서는 환경 변수와 같은 변수 이름을 유지하는 것이 좋습니다.

    3단계: 어플리케이션에 구성 추가

    app.py에 플라스크 대상이 포함된 파일.
    app.config.from_pyfile('settings.py')
    # loading all environment variables from settings.py
    
    따라서 발생하는 것은 설정이다.py는 프로그램에 설치된 값을 읽습니다.env 파일을 설정에 정의된 방식으로 변수에 저장합니다.피야.
    flask 대상의 config 방법과 from_pyfile 하위 방법을 사용할 때 프로그램은 비밀리에 정의된 변수에 안전하게 접근합니다.
    예전처럼 당신의 응용 프로그램을 실행하면, 지금은 당신의 멋진 프로젝트로 세계에 서비스를 제공할 수 있습니다

    보상 팁:


    증거를 지나치게 보호하는 것을 피하기 위해서git 같은 버전 제어 시스템을 사용할 때 전송하지 마십시오.flaskenv 및.환경 파일.쓸 수 있어.gitignore 파일은 프로젝트 디렉터리에 있는 파일을 무시합니다.그것들은 여전히 로컬 시스템에 있다.

    문장이 어때요?


    친애하는 독자 여러분, 저는 당신들과 함께 공부하는 것을 좋아합니다.아래의 토론 부분에서 당신의 피드백을 저와 공유합니다.더 좋은 방법이 있나요?
    좋은 친구는 다른 친구를 개선할 수 있으니 마음대로 나누세요.
    나는 모든 사전 피드백에 감사한다.

    좋은 웹페이지 즐겨찾기