Flask로 CRUD 애플리케이션 개발하기
이 튜토리얼은 Flask를 사용하여 CRUD(생성, 읽기, 업데이트, 삭제) 애플리케이션을 구축하는 방법을 안내합니다.
우리는 데이터 관리를 간소화하기 위해 Back4app을 백엔드 서비스로 통합할 것입니다. Back4app 프로젝트를 설정하고, 유연한 데이터 구조를 설계하며, Flask를 사용하여 CRUD 기능을 구현하는 방법을 배우게 됩니다.
이 단계별 안내에서는 먼저 Basic-CRUD-App-Flask라는 이름의 Back4app 프로젝트를 생성하여 강력한 비관계형 데이터 저장 솔루션을 제공합니다.
클래스와 필드를 사용하여 데이터 스키마를 수동으로 정의하거나 Back4app의 AI 에이전트를 사용할 수 있습니다.
Back4app의 관리 인터페이스로 백엔드를 구성한 후, Flask 애플리케이션을 REST API 호출을 통해 서비스에 연결합니다. 이 튜토리얼은 데이터에 대한 안전한 접근 관리도 다룹니다.
마지막에는 CRUD 작업을 수행할 수 있는 보안 사용자 인증 및 데이터 처리를 갖춘 프로덕션 준비가 완료된 Flask 애플리케이션을 갖게 됩니다.
- 비관계형 백엔드를 사용하여 Flask 기반 CRUD 앱을 만드는 방법.
- Back4app에서 백엔드를 구조화하고 Flask 프로젝트와 통합하는 방법.
- CRUD 작업을 쉽게 관리하기 위해 Back4app 관리 인터페이스를 활용하는 방법.
- Docker를 사용하여 컨테이너화하는 것을 포함하여 Flask 애플리케이션을 배포하는 방법.
시작하기 전에 다음을 확인하세요:
- 설정된 Python 개발 환경. VSCode 또는 PyCharm과 같은 편집기를 사용하고 Python 3.8(또는 이후 버전)을 설치하세요.
- Back4app 계정에 로그인하세요.
- “새 앱” 클릭 대시보드에서.
- 프로젝트 이름 입력: Basic-CRUD-App-Flask 설정 프로세스를 완료하세요.

생성 후, 프로젝트가 대시보드에 나타나며, 백엔드 구성의 기반 역할을 합니다.
이 애플리케이션을 위해, Back4app 프로젝트에서 여러 클래스를 설정할 것입니다. 아래는 CRUD 작업에 필수적인 핵심 클래스와 그 필드의 예입니다.
필드 | 유형 | 설명 |
---|---|---|
_id | 객체 ID | 자동 생성된 고유 식별자. |
제목 | 문자열 | 항목의 이름 또는 제목. |
설명 | 문자열 | 항목에 대한 간략한 개요. |
생성일 | 날짜 | 항목이 생성된 타임스탬프. |
업데이트됨 | 날짜 | 최신 업데이트의 타임스탬프. |
필드 | 유형 | 설명 |
---|---|---|
_id | 객체 ID | 자동 생성된 고유 식별자. |
사용자 이름 | 문자열 | 사용자를 위한 고유한 사용자 이름. |
이메일 | 문자열 | 고유한 이메일 주소. |
비밀번호 해시 | 문자열 | 인증을 위한 안전하게 해시된 비밀번호. |
생성일 | 날짜 | 사용자 계정이 생성된 타임스탬프. |
업데이트됨 | 날짜 | 마지막 계정 업데이트의 타임스탬프. |
이러한 클래스를 생성하고 Back4app 대시보드에서 필드를 직접 추가할 수 있습니다.

데이터 유형을 선택하고, 필드 이름을 지정하고, 기본값을 설정하고, 필수로 표시하여 열을 추가할 수 있습니다.

대시보드의 AI 에이전트는 귀하의 지침에 따라 스키마를 자동으로 설정할 수 있습니다. 이 도구는 프로세스를 간소화하고 귀하의 데이터 모델이 CRUD 작업에 최적화되도록 보장합니다.
- AI 에이전트 열기: Back4app 대시보드에 로그인하고 프로젝트 설정에서 AI 에이전트를 찾습니다.
- 스키마 설명하기: 클래스와 필드를 나열하는 자세한 프롬프트를 제공합니다.
- 설정 확인하기: 제안된 스키마를 검토하고 변경 사항을 승인합니다.
이 AI 기반 프로세스는 시간을 절약하고 일관되고 효과적인 데이터 모델을 보장합니다.
Back4app의 관리자 인터페이스는 백엔드 데이터를 관리하기 위한 코드 없는 솔루션을 제공합니다. 드래그 앤 드롭 기능을 사용하여 레코드를 추가, 편집 또는 삭제하는 CRUD 작업을 쉽게 수행할 수 있습니다.
- “더보기” 메뉴로 이동하여 Back4app 대시보드에서.
- “관리자 앱” 선택을 클릭하고 “관리자 앱 활성화.”
- 관리자 계정을 생성하고, 초기 역할인 B4aAdminUser를 설정합니다.

활성화 후, 관리자 인터페이스에 로그인하여 프로젝트 데이터를 관리합니다.

관리자 인터페이스 내에서 다음을 수행할 수 있습니다:
- 새 항목 추가: 클래스 내에서 “레코드 추가”를 클릭하여 새 데이터를 생성합니다.
- 항목 보기 및 수정: 세부정보를 보거나 필드를 업데이트하려면 레코드를 선택합니다.
- 레코드 삭제: 더 이상 필요하지 않은 항목을 제거합니다.
이 사용하기 쉬운 인터페이스는 백엔드 관리를 간소화하여 생산성을 향상시킵니다.
백엔드가 설정되면 다음 단계는 Flask 애플리케이션을 Back4app에 연결하는 것입니다.
Flask에 전용 Parse SDK가 없기 때문에 REST API 호출을 사용합니다. Flask 앱에서 requests 라이브러리를 사용하여 CRUD 작업을 수행할 수 있습니다.
요청 라이브러리 설치: 터미널에서 다음 명령을 실행하세요:
API 호출을 위한 Python 모듈 구성: back4app_api.py라는 파일을 만드세요:
Flask 라우트에 API 기능 통합: 예를 들어, app.py:
이 예제는 Flask 내에서 REST 호출을 사용하여 Back4app 백엔드와 상호작용하는 방법을 보여줍니다.
접근 제어를 구성하여 데이터를 보호하세요. 예를 들어, 새 항목을 생성할 때 해당 항목의 생성자에게만 접근을 제한할 수 있습니다.
아래는 제어된 접근을 사용한 API 호출의 예입니다:
Back4app 대시보드에서 클래스 수준 권한(CLPs)을 직접 조정하여 인증된 사용자만 특정 클래스에 접근할 수 있도록 하세요.
Back4app은 Users 클래스를 통해 내장된 사용자 관리를 제공합니다. Flask 앱에서 등록 및 로그인 엔드포인트를 생성할 수 있습니다.
이 기능을 사용하여 사용자 등록 및 로그인을 처리하는 Flask 경로를 생성할 수 있습니다.
Back4app은 배포를 간소화합니다. Docker를 포함한 여러 방법으로 Flask 앱을 배포할 수 있습니다.
- 애플리케이션 준비: 필요한 모든 파일과 종속성이 포함되어 있는지 확인하십시오.
로컬 테스트: 다음 명령으로 로컬에서 앱을 실행하십시오:
일반적인 구조는 다음과 같을 수 있습니다:
프로젝트 루트에 Dockerfile을 포함하십시오:
- GitHub 리포지토리 연결: 코드가 GitHub에 푸시되었는지 확인하세요.
- 배포 설정 구성: Back4app 대시보드에서 웹 배포 기능을 사용하여 리포지토리(예: Basic-CRUD-App-Flask)를 연결하고 브랜치를 선택하세요.
- 빌드 명령 정의: 빌드 명령(예: pip install -r requirements.txt)와 애플리케이션의 위치를 지정하세요.
- 배포: 배포를 클릭하고 애플리케이션이 라이브될 때까지 로그를 모니터링하세요.
잘 하셨습니다! Back4app과 통합된 Flask 기반 CRUD 애플리케이션을 성공적으로 생성했습니다.
당신은 Basic-CRUD-App-Flask라는 프로젝트를 설정하고, 아이템과 사용자에 대한 데이터 모델을 정의했으며, Back4app 관리 인터페이스를 통해 백엔드를 관리했습니다.
또한, REST API 호출을 사용하여 Flask 애플리케이션을 연결하고 보안 조치를 구현했습니다.
다음은 무엇인가요?
- 기능 확장: 고급 검색, 상세 아이템 보기 또는 실시간 업데이트와 같은 기능을 추가하는 것을 고려하세요.
- 백엔드 서비스 향상: 클라우드 기능을 탐색하거나, 서드파티 API를 통합하거나, 역할 기반 접근 제어를 구현하세요.
행복한 코딩과 Flask CRUD 애플리케이션에 행운을 빕니다!
