레드우드JS로 기본 CRUD 앱 만드는 방법? 단계별 가이드
이 가이드를 통해 RedwoodJS를 사용하여 기본 CRUD(생성, 읽기, 업데이트, 삭제) 애플리케이션을 만드는 방법을 배울 수 있습니다.
이 튜토리얼은 Back4app을 백엔드 서비스로 설정하고, 강력한 데이터베이스 스키마를 설계하며, 이를 RedwoodJS 프론트엔드와 통합하는 과정을 안내합니다.
이 단계를 따르면 데이터 관리를 효과적으로 수행하면서 현대 개발 기술을 활용하는 프로덕션 준비가 완료된 애플리케이션을 구축할 수 있습니다.
- 효율적으로 데이터를 처리하는 강력한 백엔드 서비스로 CRUD 애플리케이션을 만드는 방법을 마스터하세요.
- 확장 가능한 데이터베이스를 설계하고 이를 RedwoodJS 인터페이스와 통합하여 사용자 상호작용을 향상시키는 방법을 알아보세요.
- CRUD 작업을 간소화하기 위해 코드 없는 드래그 앤 드롭 관리 도구인 Back4app Admin App의 사용을 탐색하세요.
- 웹 애플리케이션을 신속하게 배포하기 위한 전략, 특히 Docker를 통한 컨테이너화에 대해 배우세요.
시작하기 전에 다음 사항을 확인하세요:
- RedwoodJS 개발 환경이 설정되어 있습니다. RedwoodJS CLI를 사용하여 애플리케이션을 생성하세요. Node.js(버전 14 이상)가 설치되어 있는지 확인하세요.
- Back4app 대시보드에 로그인하세요.
- “새 앱” 선택하기 새로운 프로젝트를 시작합니다.
- 프로젝트 이름 지정하기: Basic-CRUD-App-RedwoodJS 설정 지침을 따르세요.

이제 귀하의 프로젝트가 대시보드에 나타나며, 백엔드 구성 및 관리를 위한 기초를 마련합니다.
이 CRUD 앱을 위해 여러 컬렉션을 설계할 것입니다. 아래는 두 가지 필수 컬렉션의 예와 필요한 필드입니다. 이러한 설정은 신뢰할 수 있는 CRUD 기능을 가능하게 하는 데 중요합니다.
이 컬렉션은 각 항목에 대한 세부 정보를 포함하고 있습니다.
필드 | 데이터 유형 | 목적 |
---|---|---|
_id | 객체 ID | 자동 생성된 고유 식별자. |
제목 | 문자열 | 항목의 이름 또는 제목. |
설명 | 문자열 | 항목을 설명하는 간단한 요약. |
생성일 | 날짜 | 레코드 생성 타임스탬프. |
업데이트됨 | 날짜 | 최신 업데이트의 타임스탬프. |
이 컬렉션은 사용자 자격 증명 및 세부 정보를 저장합니다.
필드 | 데이터 유형 | 목적 |
---|---|---|
_id | 객체 ID | 자동 생성된 고유 식별자. |
사용자 이름 | 문자열 | 사용자를 위한 고유 식별자. |
이메일 | 문자열 | 사용자의 고유 이메일 주소. |
비밀번호_해시 | 문자열 | 인증을 위한 암호화된 비밀번호. |
생성일 | 날짜 | 계정 생성 타임스탬프. |
업데이트됨 | 날짜 | 최신 업데이트의 타임스탬프. |
이러한 컬렉션은 Back4app 대시보드에서 새 클래스를 만들고 적절한 열을 추가하여 직접 구성할 수 있습니다.

각 필드를 유형을 선택하고 이름을 지정하며 기본값 또는 필수 상태를 설정하여 정의합니다.

대시보드에서 접근할 수 있는 Back4app AI 에이전트는 설명 프롬프트를 기반으로 데이터베이스 스키마를 자동으로 생성할 수 있습니다. 이 기능은 애플리케이션에 일관된 스키마를 설정하는 속도를 크게 높입니다.
- AI 에이전트 시작하기: Back4app 대시보드 또는 프로젝트 설정에서 에이전트에 접근합니다.
- 데이터 모델 상세화: 필요한 컬렉션과 필드를 설명하는 포괄적인 프롬프트를 입력합니다.
- 검토 및 적용: 생성된 스키마 제안을 검토하고 프로젝트에 적용합니다.
이 AI 기반 접근 방식을 활용하면 시간을 절약할 뿐만 아니라 잘 최적화되고 일관된 스키마를 보장합니다.
Back4app 관리 앱은 사용하기 쉬운 코드 없는 인터페이스로, 백엔드 데이터를 손쉽게 처리할 수 있도록 도와줍니다. 드래그 앤 드롭 기능을 통해 CRUD 작업(예: 레코드 추가, 보기, 업데이트 및 삭제)을 쉽게 수행할 수 있습니다.
- “더보기” 메뉴로 이동하여 Back4app 대시보드에서.
- “관리 앱” 선택 후 “관리 앱 활성화.”
- 관리 자격 증명 설정 초기 관리 사용자를 생성하여 역할(예: B4aAdminUser) 및 시스템 컬렉션을 설정합니다.

활성화 후, 관리 앱에 로그인하여 데이터를 관리합니다.

관리 앱 내에서 다음을 수행할 수 있습니다:
- 새 레코드 추가: 컬렉션(예: 항목)에서 “레코드 추가” 버튼을 사용하여 새 데이터를 삽입합니다.
- 레코드 보기 및 수정: 레코드를 클릭하여 세부 정보를 보고 업데이트합니다.
- 레코드 제거: 더 이상 필요하지 않은 데이터를 삭제 옵션을 선택하여 제거합니다.
이 직관적인 인터페이스는 데이터 관리 작업을 크게 단순화합니다.
이제 백엔드가 설정되고 관리 가능한 상태가 되었으므로, RedwoodJS 프론트엔드를 Back4app과 연결할 시간입니다.
RedwoodJS는 GraphQL을 기반으로 구축되어 있어 API 호출을 통해 Back4app과 통합하는 데 완벽한 조합입니다. SDK를 사용하는 대신, GraphQL 쿼리와 변이를 사용하여 백엔드와 상호작용하게 됩니다.
새로운 RedwoodJS 애플리케이션 생성하기:
프로젝트 디렉토리로 이동하기:
환경 변수를 설정하기: 당신의 .env 파일에 Back4app 자격 증명을 추가하세요:
RedwoodJS 셀은 데이터 가져오기를 간소화합니다. 다음은 항목을 검색하는 셀의 예입니다:
RedwoodJS 컴포넌트에서 유사한 GraphQL 쿼리 및 변형을 통합하여 CRUD 작업을 수행할 수 있습니다.
객체에 직접 접근 제어 목록(ACL)을 설정하여 데이터를 보호하세요. 예를 들어, 개인 아이템을 생성할 때 소유자만 읽기/쓰기 권한을 가질 수 있도록 할 수 있습니다.
Back4app 대시보드 내에서 각 컬렉션에 대한 클래스 수준 권한(CLPS)을 설정하여 인증된 사용자 또는 특정 역할에 대한 접근을 제한하여 데이터의 보안을 유지합니다.
Back4app은 강력한 사용자 시스템을 활용하며, 이를 RedwoodJS에 통합하여 사용자 인증을 수행할 수 있습니다. RedwoodJS 앱에서 API 호출을 통해 사용자 가입 및 로그인을 처리합니다.
로그인 및 사용자 세션 유지에 대해 유사한 방법을 적용할 수 있습니다.
Back4app의 웹 배포 기능은 RedwoodJS 프론트엔드를 원활하게 호스팅할 수 있게 해줍니다. 코드를 프로덕션에 푸시하기 위해 다음 단계를 따르세요:
- 터미널에서 프로젝트 폴더를 엽니다.
빌드 명령어를 실행합니다:
- 빌드 출력을 확인합니다: web/dist 폴더에 모든 필요한 자산과 함께 index.html 파일이 포함되어 있는지 확인합니다.
귀하의 리포지토리는 RedwoodJS 애플리케이션의 전체 소스를 호스팅해야 합니다. 일반적인 구조는 다음과 같을 수 있습니다:
Git 초기화 (필요한 경우):
파일 스테이징하기:
코드 커밋하기:
GitHub 리포지토리 생성하기 (예: Basic-CRUD-App-Redwood) 그리고 코드를 푸시하기:
- 웹 배포에 접근하기 당신의 Back4app 대시보드에서 프로젝트(기본-CRUD-앱-레드우드) 아래.
- GitHub 계정 연결하기 아직 연결하지 않았다면, 안내에 따라.
- 저장소 및 브랜치 선택하기 (예: main) 레드우드JS 코드가 포함된.
- 빌드 명령어: yarn rw build를 지정하세요. 저장소에 미리 빌드된 배포가 포함되어 있지 않은 경우.
- 출력 디렉토리: 출력 디렉토리를 web/dist로 설정하세요.
- 환경 변수: 필요한 환경 변수를 포함하세요, 예를 들어 Back4app 키.
배포를 위해 도커를 선호한다면, Dockerfile을 저장소에 포함하세요. 예를 들어:
- 배포 버튼을 누르세요 Back4app에서 구성을 완료한 후.
- 배포 프로세스를 모니터링하세요: Back4app이 코드를 가져오고, 프로젝트를 빌드하며, 컨테이너화된 환경에 배포합니다.
- 애플리케이션 URL을 가져오세요: 배포가 완료되면 RedwoodJS 애플리케이션이 호스팅되는 URL이 제공됩니다.
- 제공된 URL을 열어보세요 브라우저에서 사이트가 로드되는지 확인합니다.
- 애플리케이션 기능 테스트: 모든 페이지, 경로 및 자산이 올바르게 로드되는지 확인합니다.
- 필요시 문제 해결: 필요한 디버깅을 위해 브라우저 개발자 도구와 Back4app 배포 로그를 활용하세요.
Back4app을 사용하여 RedwoodJS 기반 CRUD 애플리케이션을 구축한 것을 축하합니다!
당신은 Basic-CRUD-App-Redwood이라는 제목의 프로젝트를 성공적으로 설정하고, 항목 및 사용자에 대한 상세한 데이터베이스 컬렉션을 생성했으며, 강력한 데이터 관리 및 보안과 함께 깔끔한 프론트엔드를 통합했습니다.
다음은 무엇인가요?
- 프론트엔드 개선하기: 상세 항목 페이지, 검색 기능 및 실시간 업데이트와 같은 기능으로 RedwoodJS 애플리케이션을 향상시키세요.
- 고급 기능 통합하기: 서버리스 기능, 타사 통합 또는 더 복잡한 접근 제어를 추가하는 것을 고려하세요.
이 튜토리얼을 따라함으로써, 이제 확장 가능한 CRUD 백엔드를 개발하고 이를 Back4app을 사용하여 현대적인 RedwoodJS 프론트엔드와 원활하게 통합하는 방법을 알게 되었습니다. 코딩 여정을 즐기세요!
