https://static.blex.kr/title/baealex/2020/1/1/3iNVF.jpg

'BLEX LOGIC' 시리즈팀블로그 고안

baealex 95%

'BLEX' 혹은 '블렉스'라고 표기하는게 옳습니다.

Sign in to view email

'BLEX LOGIC' 시리즈의 이전 글

무한 스크롤 이슈

사실 이 블로그 서비스의 제 1 타겟을 개발자로 생각하고 있었는데 개발자의 경우는 팀 단위로 움직이는 경향이 많으므로 확실히 좋은 의견이라고 생각했다. 또한 동호회나 전문가 모임이 참여할 수 있는 길도 열린다. 다만 나는 팀 블로그를 운영한 경험이 없었다. 그냥 팀의 블로그를 내가 운영하거나 이곳에서 팀 블로그를 운영했는데 간단히 계정을 새로 만들어 운영하였다.


데이터 모델

팀 블로그를 사용하려면 어떤 데이터들이 필요할까? 우리 팀을 기준으로 생각하자.

  • 이름 : Comma, Dev.
  • 로고 : PNG Image
  • 가입된 날자 : 2019-12-31
  • 소유자 : baealex
  • 회원(편집자, 작성자) : DeCrazy, Imakara38
  • 글 : 소개(팀 공식 글), 활동(baealex), 활동(baealex), 프로젝트(팀 공식 글), 활동(DeCrazy)
  • 소개 : About page
  • 짧은 소개 : Bio
  • 홈페이지 링크 : https://commadev.org

티스토리를 살펴보면 회원도 소유자와 편집자와 작성자로 나뉘어져 있는데 여기서도 같은 방식을 사용해야 겠다.

  • 소유자 : 글을 삭제할 권한이 있음. 사용자를 초대하거나 추방할 수 있으며 다른 사용자에게 소유 권한을 넘겨줄 수 있음. 만일 결제 시스템까지 이어진다면 결제 대상이 됨(하위 포함)
  • 에디터 : 글을 편집할 권한이 있음. 팀 공식 글을 작성할 수 있음(하위 포함)
  • 작성자 : 글을 작성할 권한이 있음

팀 글의 경우에는 기존의 글 모델을 그대로 활용하기엔 어려움이 보인다. 다만 섞으려면 약간의 귀찮음이 존재할 것 같다. 또한 댓글의 경우도 완전히 새로 만들어야 되고 말이다... 결국 기존의 글 모델을 사용하는게 좋을 듯 싶은데... 어떻게 확장시킬지 약간은 고민을 해봐야겠다.

  • 팀 : 외래키(글 작성시 사용자가 속한 팀을 선택할 수 있다. 혹은 팀 페이지에서 글을 작성하도록 할 예정이다.)
  • 공지 : 팀에 속하지 않은 글이면서 공지인 글은 BLEX의 공지가 된다. 팀에 속한 글이면서 공지인 글은 팀의 공지가 된다. 다만 이와같이 설정한 결우 일반 사용자가 BLEX의 공지를 설정할 수 있게 될지도 모르겠다. 뷰에서 처리를 해줘야 할 듯. 아니면 팀 글 작성을 별도로 생성해야겠다.

미디엄을 보면 팀 카테고리도 존재하는데... 굳이 팀을 위해서 카테고리를 추가하는 건 불필요해 보인다. 사용자 페이지와 마찬가지로 태그로 카테고리를 생성하되 팀스러운 느낌을 주기위해 별도의 레이아웃을 사용해야 할 것 같다.


URL

사용자의 경우에는 @라는 키워드를 사용하고 있는데 팀은 좀 다른 키워드를 사용해야 할 것으로 보인다. 현재는 @와 같이 URL에서 사용할 수 있는 키워드 중에 :을 염두해 두고있다.

/:team
/:team/about
/:team/post-name
/:team/@author/post-name
  • /:team : 로고와 짧은 소개와 작성한 글을 표시하는 페이지, 팀에 속한 멤버라면 글을 쓸 수 있는 버튼을 표시하도록 하자.
  • /:team/about : 마크다운 양식으로 작성된 소개가 보여지며 멤버의 목록이 출력된다.
  • /:team/post-name : 팀의 공식 글로 팀만 표시된다.
  • /:team/@author/post-name : 팀의 개인 글로 팀과 작성자가 표시된다.
'BLEX LOGIC' 시리즈의 다음 글

중간 댓글 알고리즘

작성된 댓글이 없습니다!

로그인된 사용자만 댓글을 작성할 수 있습니다.

이 작성자가 게시한 다른 글