🚗 이전 포스팅 가기
https://bin-repository.tistory.com/156
[nodejs/strapi] 🚀 strapi 설치 및 mysql 연동하기 - 1
https://strapi.io/documentation/developer-docs/latest/getting-started/quick-start.html#_1-install-strapi-and-create-a-new-project Quick Start Guide - Strapi Developer Documentation Get ready to get..
bin-repository.tistory.com
#1. admin 계정을 만들어보자
최초 실행을 하게되면 아래와 같은 어드민 패널이 뜬다.
어드민 계정을 새로 만들고 LET'S START 를 누르면 메인화면으로 갈 수 있다.
찬찬히 살펴보면 collection types 에 Users가 있다.
뭐지? 안만들었는데?!
strapi 는 기본적으로 user 의 관한 플러그인을 지원해준다!
뭐야?
눌러보면 또 아무것도 없다.
각설하고 결론부터 말하면
초기화면에서 만들었던 계정은 내가 개발하려는 서비스의 유저가 아닌 admin panel 에 들어오기 위한 개발자용 admin 유저이다.
한번 제대로 로그인 프로세스 (jwt, role... 등등)를 만들어 본 개발자라면 단순 엔티티의 crud 를 만드는 것보다 까다롭고 생각할 것이 많은 것을 알 것이다...
주니어 개발자인 나는 항상 이런 고민이 있었다.
로그인은 어떤 사이트든 기본중에 기본인 기능인데 이거를 꼭 1부터 10까지 직접 개발을 해야할까?
(물론 해봐야한다! 미들웨어나 auth 방식의 대한 이해는 반드시 필요하다!)
strap 의 user-permission 플러그인은 이런 고민을 날려준다... 게다가 sns 로그인까지 지원한다!
(자세한건 따로 다른 포스팅에서 설명하겠다)
#2. 젤 만만한 게시판을 만들어보자.
Q. 정말 코딩을 하나도 안해도 되나요?
A. yes
1) Content-Types Builder > Create new collection type 클릭
2) Display name 입력 후 continue 클릭
display name 이 db 의 table 이름이 된다.
3) 테이블 필드 설정하기
정말 다양한 타입의 필드를 설정할 수가 있다.
나는 간단하게 제목, 내용, 작성자 정도로 필드구성을 했다.
작성자 같은경우에 user 테이블이랑 관계성을 가져야 하는데 이것 역시 Relation 을 선택해서 설정할 수 가 있다 ㅠㅠ
위와 같이 설정해주고 제목, 내용 필드도 추가해주면 아래와 같은 화면을 볼 수 있고 save 를 누르면 된다.
서버가 재시작 한다는 문구가 나오면서 `post` 테이블이 추가된 것을 볼 수 있다.
소스코드를 보면 api/post 도 추가되어있는 것을 볼 수 있다.
아무런 로직이 없기때문에 service, controlloer 는 텅 비어있다.
어드민 패널에서 생성한 필드의 명세들이
models/post.settings.json 안에 있다.
{
"kind": "collectionType",
"collectionName": "posts",
"info": {
"name": "post"
},
"options": {
"increments": true,
"timestamps": true,
"draftAndPublish": true
},
"pluginOptions": {},
"attributes": {
"description": {
"type": "text"
},
"user": {
"plugin": "users-permissions",
"model": "user",
"via": "post"
},
"subject": {
"type": "string"
}
}
}
CRUD 는 다음 포스팅에서 ~ ✋
'JavaScript & Node js' 카테고리의 다른 글
[strapi] 🚀 강력한 headless 프레임워크 strapi 사용해보기 [3/3] (0) | 2021.10.29 |
---|---|
[nodejs/strapi] 🚀 강력한 headless 프레임워크 strapi 사용해보기 [1/3] (0) | 2021.10.28 |
[nest.js] AWS s3 bucket 에 파일 여러개 업로드 + rest api 만들기 (1) | 2021.10.26 |
npm ERR! must provide string spec (0) | 2021.07.13 |
[JavaScript] 정규표현식 (Regular Expression) (0) | 2020.07.07 |