모든 세팅을 끝나고 나면, 이제 DB와 API를 생성할 수 있는 상태가 된 것이다. 이후 부터 기본적인 CRUD가 가능한 Server를 Control 할 수 있게 된다.
DB
strapi에서 DB는 Collection Types라는 이름으로 DB Table을 나타낸다. 동시에 Users, User라는 Rest API의 Router도 생성된다.

- sqlite 기준으로 기본적으로 생성된 DB를 보면 아래와 같다.
- 다른 것들은 strapi의 기본적인 기느들과 관련되거나, role등에 관련된 것이라서 직접 손댈일이 없다.
- users-permissions_user라는 Table을 볼 수 있으며, Collection Types Users에 매핑되는 Table이다.
- 테이블 이름의 규칙
- 기본적으로 strapi가 생성하는 DB이름은 규칙을 가지고 있다.
- Collection Type(table)을 생성하면, 사용자가 정하는 이름으로 (소문자로) 생성된다.
- 다른 Table과 Relation을 strapi에서 생성하는 경우, table1_table2와 같은 방식의 Relation table을 생성하여 그 관계를 표현한다.(이후 글에서 다루기로 한다)

RestAPIs
strapi에서는 collection타입을 쿼리 할 수 있는 기본적인 api set을 제공한다. collection type만 생성해도, 아주 기본적인 형태의 query가 가능한 api가 자동으로 만들어 진다. 위에서 기본적으로 생성된 User Table도 /users /user/[id]와 같은 기본적인 api가 생성된다.
- 기본적인 API들은 여기에서 샘플들과 함께 확인 할 수 있다.
- CRUD에 해당하는 기본적인 API 모두가 생성된다.
- Permission 문제로 localhost:1337/users 로 API를 날리면, 403 forbidden이 뜨는 것을 확인 할 수 있다. collection type이 추가 되면, user계정별로 Role별로 각 Collection의 CRUD에 대한 permission을 설정해 주어야 한다.
- public설정은 아무나 access 가능한 role이다. User-Permission에서 find 권한을 주면, /users, users/[id]와 같은 find RestAPI가 접근 가능하게 된다.
- User는 Collection타입 중 중요하고 특이한 타입이라 아래 Roles & Permissions중에 USERS-PERMISSIONS로 따로 구별되어 있다.
- 이후 Collection Types에 추가 되는 Table에 대한 RestAPI Permission의 경우 CONTENTS-MANAGER라는 항목에서 설정할 수 있다.(다음 글에서 설명함)


NEXT
- Collection타입을 만드는 방법
- Collection타입끼리 Relation 생성방법
- Collection타입에 대한 Permission 설정방법
'CMS' 카테고리의 다른 글
strapi collection type 상세 (2) | 2020.10.17 |
---|---|
strapi collection type추가 (0) | 2020.10.12 |
strapi Admin & User (0) | 2020.09.24 |
strapi Server & DB configuration 살펴보기 (0) | 2020.09.15 |
strapi란? (0) | 2020.09.07 |