테이블과 스키마
테이블은 CordBase의 핵심이에요. 각 테이블은 구조를 정의하고, 그 구조에 따라 서버 멤버가 쓸 슬래시 명령어가 자동으로 만들어져요.
열 유형
모든 열에는 유형이 있고, 유형에 따라 데이터를 검증하고 저장하고 Discord에 표시하는 방식이 정해져요.
텍스트
자유 형식 텍스트예요. 이름, 설명, 메모 등 모든 문자열 데이터에 사용해요.
숫자
정수나 소수 값이에요. 숫자 열은 leaderboard 명령어에 쓰이고 update로 값을 늘릴 수 있어요. 점수, 가격, 수량, 경험치(XP)에 알맞아요.
날짜
YYYY-MM-DD 형식으로 입력하는 날짜예요. 마감일이나 이벤트 날짜에 유용해요.
예/아니요
참/거짓 토글이에요. 완료, 활성, 인증, 결제 여부 같은 상태 표시에 좋아요.
선택지
열을 만들 때 직접 정하는 옵션 목록이에요. 카테고리, 희귀도, 상태 값, 역할에 딱 맞아요.
멤버
Discord 사용자를 가리켜요. 사용자 ID로 저장되고 사용자 이름으로 표시돼요. 소유자나 담당자를 지정할 때 사용해요.
열 설정
- 필수 — 켜면 슬래시 명령어에서 이 항목을 반드시 입력해야 해요. 끄면 선택 항목이 되어 비워 둘 수 있어요.
테이블 구조 수정하기
테이블을 만든 뒤에도 대시보드에서 수정할 수 있어요. 테이블로 이동해 테이블 수정을 클릭해 주세요.
- 열 추가 — 새 열은 구조의 맨 끝에 추가돼요. 기존 행은 수정하기 전까지 새 열의 값이 비어 있어요(null).
- 열 이름 바꾸기 — 대시보드와 봇 응답에 표시되는 이름이 바뀌어요. 멤버가 입력하는 옵션 이름은 그대로예요.
- 열 삭제 — 테이블과 슬래시 명령어에서 열을 제거해요.
테이블을 만들면 기존 열의 키와 유형은 잠겨요. 열 유형을 바꾸려면 새 열을 추가하고 기존 열을 삭제해 주세요.
변경 사항을 저장하면 CordBase가 Discord에 슬래시 명령어를 다시 등록해요. 반영되기까지 몇 초 걸려요.
역할 기반 권한
각 테이블에는 Discord 역할에 지정할 수 있는 권한 수준이 세 가지 있어요.
- 읽기 —
query,view,saved-view,leaderboard로 데이터를 볼 수 있어요. - 쓰기 — 읽기 권한에 더해 모든 행에
add와update를 사용할 수 있어요. - 관리 —
delete,bulk-update,bulk-delete를 포함한 모든 권한이에요. 일괄 명령어는 Pro 또는 Max 플랜이 필요해요.
테이블에 역할을 지정하기 전까지는 모든 멤버가 delete를 포함한 모든 명령어를 실행할 수 있어요. 역할을 하나라도 지정하면 목록에 있는 역할이 없는 멤버는 테이블을 전혀 사용할 수 없으니, 테이블을 계속 공개하려면 모든 멤버가 가진 역할에 읽기 권한을 주세요. Discord 관리자는 언제나 모든 명령어를 실행할 수 있어요.