strapi 시작하기

strapi란?

REST api를 쉽게 만들어주는 Open source Node.js Handless CMS 툴로, 쉽게 말해 프론트 엔드가 없고 백엔드만 있는 CMS로 코딩없이 대시보드를 이용해 손 쉽게 백엔드 시스템을 구축할 수 있는 툴이다.

즉, strapi를 사용하면 벡엔드 개발자가 없어도 프론트 엔드 개발자가 쉽게 REST api를 생성할 수 있다.

strapi의 장점

strapi 시작하기

아래 명령어로 strapi를 시작할 수 있다.

npx create-strapi-app@latest 프로젝트명 --quickstart

설치가 완료되면 자동으로 실행이 된다.

최초 실행시 관리자 계정을 생성하라는 회원가입 화면이 뜬다. (캡쳐하기 까먹음)

회원가입을 하고 로그인을 하면 다음부터는 실행시 로그인 화면이 뜬다.

strapi login

strapi api 설정 및 생성하기

로그인 하면 아래와 같은 화면이 보인다.

strapi main

여기서 lnb 메뉴 중 Content-Type Builder 에서 만들 api를 선언하고 Content Manager에서 api에 맞게 데이터를 만들어준다.

strapi create content type

strapi types

strapi save button

생성한 api type별 관계 지정하기

위에서 생성한 api type을 서로 관계 지어줄 수 있다.

strapi relations

오른쪽 상단에 [Add another field] 버튼을 눌러 collection type에서 relation type을 생성하고 원하는 api type과 연결 지어주면 된다.

ex )

one depth 하나에 title 여러개가 연결되는 1:N 관계로 생성

strapi relations

title 하나에 content 하나가 연결되는 1:1 관계로 생성

strapi relations

데이터 생성하기

api type 생성이 끝나면 왼쪽 lnb의 Content Manager에서 데이터(entry)를 생성할 수 있다.

strapi content manager

api type에 관계를 설정해두었다면 엔트리 생성시에 관계도 연결 시켜줄 수 있다.

strapi content manager

여기서 유의해야 할 점은 엔트리 생성시 꼭 저장 후 Publish를 해줘야 데이터가 조회된다.

strapi content manager

저장하고 Publish를 하지 않으면 api 조회시 저장한 데이터가 조회되지 않는 다.

Publish를 했다면 리스트에서 state가 Publish 상태인 것을 확인 할 수 있다.

strapi content manager

권한 설정하기

마지막으로 권한 설정을 꼭 해줘야 한다.

맨 처음 strapi로 개발을 할 때 로그인 인증에 대한 작업 없이 기본적인 생성에 대한 개발을 하고 api 조회를 해볼텐데,

atrapi에서 기본적으로 인증이 되야 데이터를 조회할 수 있도록 설정되어 있다.

그래서 테스트를 해보기 위해서 데이터의 권한을 인증없이도 조회할 수 있도록 설정해줘야 한다.

strapi setting roles

strapi setting roles

Settings / users & permissions plugin / roles 에서 permisions에서 내가 생성한 api type마다 권한을 설정해준다.

strapi setting roles

퍼블릭으로 설정한 부분들을 체크해주면 되는 데 나는 전체 테스트로 만드는 거라 모두 선택해줬다.

이것도 마찬가지로 마지막에 꼭 save 버튼을 눌러서 저장해줘야 한다.

Discussion and feedback