Flask Blueprint를 사용한 세그먼트 웹 앱 구조 | 이지투디지털

초보자를 위한 Flask 청사진을 살펴보고 웹 앱 또는 DApp 개발의 초기 단계에서 구성하는 방법을 배울 수 있습니다.

대부분의 경우 언어 및 현지화 설정만 다른 동일한 구조, 콘텐츠 또는 데이터 세트를 적용해야 합니다. 친숙한 샘플은 하위 폴더, 현지화입니다.

효율적으로 수행하기 위해 초보자를 위한 Flask 청사진을 살펴보고 Web App 또는 DApp 개발의 초기 단계에서 구조화하는 방법을 배워 이후 모든 작업을 간소화할 수 있습니다.

목차: Flask Blueprint를 사용한 세그먼트 웹 앱 구조

플라스크 청사진이란?

Flask Blueprint는 Flask 웹 프레임워크에서 제공하는 기능으로, 이를 통해 Flask 애플리케이션을 재사용 가능한 구성 요소 또는 모듈로 구성할 수 있습니다. 관련 보기, 템플릿, 정적 파일 및 기타 응용 프로그램 구성 요소를 정의하고 그룹화하는 방법을 제공하여 확장 가능한 모듈식 응용 프로그램을 만드는 데 도움이 됩니다.

Flask 청사진은 일련의 경로 및 관련 기능을 정의하기 위한 청사진 또는 템플릿 역할을 합니다. 경로, 템플릿, 정적 파일 및 오류 처리기와 같은 응용 프로그램의 여러 부분을 논리 단위로 구성하는 방법을 제공합니다.

Flask Blueprint를 사용하면 애플리케이션을 더 작고 관리하기 쉬운 구성 요소로 나눌 수 있습니다. 각 Blueprint는 고유한 경로 및 관련 기능 세트를 가질 수 있습니다. 그런 다음 이러한 청사진을 Flask 애플리케이션에 등록하여 액세스할 수 있습니다.

Flask Blueprint를 사용하면 얻을 수 있는 몇 가지 이점은 다음과 같습니다.

  1. 모듈식 구성: Blueprint를 사용하면 애플리케이션을 더 작고 재사용 가능한 모듈로 분해하여 관리 및 유지 관리가 더 쉬워집니다.
  2. 협업 개발: 여러 개발자가 서로 다른 Blueprint에서 동시에 작업할 수 있으므로 더 나은 협업과 관심사 분리가 가능합니다.
  3. URL 접두사: Blueprint에 URL 접두사를 할당할 수 있으므로 공통 기본 URL로 경로를 더 쉽게 정의할 수 있습니다.
  4. 템플릿 및 정적 파일 상속: 블루프린트는 기본 애플리케이션이나 다른 블루프린트에서 상속할 수 있는 자체 템플릿과 정적 파일을 정의할 수 있습니다.
  5. 오류 처리: Blueprint는 자체 오류 처리기를 정의하여 애플리케이션의 특정 부분 내에서 사용자 지정 오류 처리를 허용할 수 있습니다.

레이어 및 폴더 구조

Blueprint 구조와 비교할 때 기본적으로 일반적인 관행에서는 개발자가 루트 디렉토리에 app.py, 템플릿 폴더의 html 스크립트 및 나머지 자료, 정적의 CSS 또는 JS에 세 가지 필수 문서를 추가해야 합니다. 두 개의 폴더와 app,py는 루트 폴더에 있습니다.

반대로 Blueprint를 사용하는 경우 접두사 레이어 또는 하위 폴더 스크립트를 루트 폴더에 넣을 수 없는지 확인하십시오. Flask 서버가 활성화 스크립트를 올바르게 감지할 수 있도록 app.py만 create_app() 함수와 함께 유지합니다.

각 Blueprint에는 위에서 언급한 세 가지 필수 요소(정적 폴더, 템플릿 폴더 및 분기 스크립트)가 필요합니다.

분기 청사진 구성

폴더와 경로가 준비되면 청사진 구성을 시작할 수 있습니다. 브랜치 측에서는 선택적 모듈 및 정보가 포함된 개체를 생성하기 위해 플라스크 및 청사진을 가져와야 합니다. 샘플은 다음과 같습니다.

From flask import Blueprint

JPSiteScript = Blueprint ( 'japaneseSite' , __name__ , template_folder = "templates" , static_folder = 'static/assets' , static_url_path = '/static/assets' )

그런 다음 Blueprint가 없는 앱 대신 japaneseSite를 사용하여 다음과 같이 경로를 계속 설정할 수 있습니다.

# Define routes and functions

@japaneseSite.route('/login')

def login():

return 'Login page'

기본 앱 구성

기본 app.py에서 우리는 또한 우리가 가지고 있는 Blueprint의 수와 그것이 무엇인지 Flask에 알려야 합니다. 그래서 각 청사진을 등록하는 방법은 다음과 같습니다.

From abc import JPSiteScript

app.register_blueprint(JPSiteScript, url_prefix='/jp')

url_prefix를 사용하여 다중 국가 사이트 구조를 설정하는 방법이므로 특히 여기에서 url_prefix에 대해 자세히 설명하고 싶습니다. Blueprint마다 하나씩 설정할 필요가 없습니다. Url_prefix는 특정 Blueprint의 모든 경로가 /jp를 URL 경로의 하위 폴더로 사용함을 의미합니다. 매우 편리합니다.

Flask Blueprint를 사용한 Web App 구조의 Python 스크립트 샘플(Database 통합, Blueprint를 사용한 사용자 인증 통합 포함)

82장 – Flask Blueprint를 사용한 세그먼트 웹 앱 구조에 관심이 있는 경우, 'Chapter 82+ Full scripts of Flask Blueprint settings'라는 메시지를 추가하여 뉴스레터를 구독 하세요. . 최신 앱 스크립트가 활성화되면 스크립트를 보내드립니다.

82장 – Flask Blueprint를 사용한 세그먼트 웹 앱 구조를 재미있게 읽으시기 바랍니다. 그렇다면 아래 나열된 항목 중 하나를 수행하여 지원해 주세요. 항상 채널에 도움이 되기 때문입니다.

  • PayPal( paypal.me/Easy2digital )을 통해 채널을 지원하고 기부하세요.
  • 제 채널 구독하시고 알림벨을 켜주세요 Easy2Digital 유튜브 채널 .
  • 내 페이지 팔로우 및 좋아요 Easy2Digital Facebook 페이지
  • #easy2digital 해시태그를 사용하여 소셜 네트워크에 기사를 공유하세요.
  • Easy2Digital 최신 기사, 비디오 및 할인 코드를 받으려면 주간 뉴스레터에 가입하십시오.
  • 독점적인 혜택을 누리려면 Patreon을 통해 월간 멤버십을 구독하세요( www.patreon.com/louisludigital ).