내가 노션을 활용하는 방법

빰빰맨·2020년 9월 17일
0
post-thumbnail

흑흑 나의 노션쨩은 그렇게 단순하지 않다구ㅠㅠ


노션을 사용하며 이런 니즈가 생겼다.

  • 개별 페이지를 인라인 형태로 만들고 이를 트래킹하거나 관리할 수는 없을까?
    • 페이지의 작성을 템플릿으로 관리할 수는 없을까?
  • 오늘 작성한 내용을 혹은 특정 카테고리에 해당하는 내용을 또 다른 어떤 페이지에서 전부 관리하며 볼 수는 없을까?

이런 고민 끝에 노션 관리에 대해 삽질한 내용을 작성했다.


개별 페이지를 인라인 형태로 만들고 이를 트래킹하거나 관리할 수는 없을까?

인라인 형태로 페이지를 만들면 겉보기에는 아주 깔끔한 형태가 되지만, 각 페이지에 대한 tracking하기 위한 방법이 마땅치 않았다.

특정 페이지에서 내부 페이지들을 만들면, 내부 페이지들은 사이드 뷰를 제외한 곳에서는 트래킹이 되지 않는다.

더욱이,
개별 페이지의 작성이 템플릿으로 관리되지 않았다.

템플릿의 활용을 위해서 반드시 데이터베이스를 활용할 필요가 생겼다.

데이터베이스를 활용하면 일단 문제가 있다.
우선 날짜별로 관리되기를 원했기 때문에 택했던 캘린더뷰는
일단 필요없는 날짜들이 너어어어어무 많이 표시된다.

가장 원하는 뷰는 리스트 뷰 였는데, 리스트 뷰는 구분이 필터를 기준으로 된다. 가장 좋은 필터는 날짜 기준인데 이를 필터를 걸어 관리하면 다음의 문제가 생긴다.

문서의 작성시간이 예를 들면, 9월 17일에서 18일로 넘어간 순간이었다고 치자. 9월 17일에 작성한 레코드가 18일로 넘어가게 되어 매번 문서 마다 18일 날짜를 17일로 재조정 해줘야 한다. 이것은 보통 자정이 넘어가도록 노션 페이지를 작성하는 내 습관에 맞지 않는 형태였다.

오늘 작성한 내용을 혹은 특정 카테고리에 해당하는 내용을 또 다른 어떤 페이지에서 전부 관리하며 볼 수는 없을까?

또다른 니즈는 overview 페이지를 만드는 것이었다.

앞서 알고리즘 페이지에서 나는 토글로 날짜별로 각 페이지를 관리하고 있는데 각 페이지를 동적을 추가하고 브루트포스는 브루트포스대로, 09/17에 작성한 내용은 09/17만 보여지는 형태로 overview 페이지를 만들고 싶었다.

overview 페이지를 만들기 위해서 데이터베이스의 활용이 필수적이었다.


데이터베이스는 훌륭한 트래커이다.

  • 무리해서라도 데이터베이스로 관리하는 것이 이득일 때가 많다.
  • 주제별로 템플릿을 사용할 수 있다는 것은 반복되는 일을 줄여줄 수 있다.
  • Overview 등 전체를 한번에 확인하기에 리스트 뷰만큼 좋은 것은 없는 것 같다.

데이터베이스 모델링에 대해

  • [전제]
    모든 문서에는 작성 날짜가 붙는다. 이 날짜는 실제 문서가 생성된 날짜는 아니다. 어느 시점을 기준으로 내가 인지하고 만들었는지가 더 중요하다. 예를 들면, 9월 17일에서 18일로 넘어간 새벽에 만든 문서는 9월 17일의 문서이다.
  • [전제에 대한 솔루션]
    따라서 18일에 실제 만들어진 문서를 17일 시점으로 관리하기 위해서는 0917이라는 날짜를 지칭하는 레코드가 있어야 한다.
    • 1:N 구조를 활용하도록 한다.
날짜 데이터 
    ㄴ 공부한 내용들 
    ㄴ 블로그 내용들
    ㄴ 기타 작업 등

다만, 구조대로 설계는 나오지 않았다.

  • 설계된 데이터베이스

    • 날짜 데이터 DB
    • 공부 카테고리 1에 대한 날짜 DB
      • 개별 공부 레코드 DB
    • 공부 카테고리 2에 대한 날짜 DB
      • 개별 공부 레코드 DB

날짜 DB를 연달아 만드는 이유

  • 날짜 데이터 DB를 기준으로 overview를 만들 때 각 개별 공부 레코드를 각각 붙여놓으면 다음과 같은 일이 발생했다.
    • 0917
      • 알고리즘 공부 1
      • 알고리즘 공부 2
      • 블로그 글감 1
      • 일기 1
  • 따라서 각 공부 카테고리도 각 날짜 데이터 DB로 묶어놓을 필요성이 생겼다.

    • 0917
      • 알고리즘 0917
        • 공부 1
        • 공부 2
      • 블로그 0917
        • 글감 1
      • 일기 0917
        • 내용 1
  • 노션에서 실제 보이는 overview 화면은 아래와 같다.

    • 이런 형태로 날짜를 기준으로 작성된 내가 필요로하는 레코드만을 확인할 수 있다. 카테고리별로 수행날짜별로 레코드가 계속적으로 생길 것이다.
  • 결과적으로는 이런 형태의 구조가 된다.

  날짜 데이터 
  ㄴ 날짜별 overview 레코드
  ㄴ 공부한 내용 날짜 
      ㄴ 내용들 
  ㄴ 블로그 내용 날짜
      ㄴ 내용들
  ㄴ 기타 작업 날짜
      ㄴ 내용들
  • 활용된 DB는 이렇게 관리되고 있다.

  • 실제 페이지에서는 이렇게 활용되고 있다.
  • 날짜 레코드를 만들고 나서 필요한 페이지를 생성한다.
  • 분류는 다음과 같이 진행되며 각 리스트의 필터는 날짜 레코드가 된다. 페이지의 생성시간과는 별개로 커스텀한 날짜로 페이지가 관리되고 있음을 확인할 수 있다.

읽어주셔서 감사합니다! 땡큐!

profile
Lovin'in Javascript http://resume.ppamppam.me

0개의 댓글