見出し画像

【Notion】Numberinger の紹介

まつけんです🐰

先日、動的ナンバリングを行う方法を説明しました ▽

DBに直接埋め込む形で説明したので、機能とデータの分離ができていません。(Notionで新しいページ開発の際に、いちいち作成しないといけないので
結構めんどくさい…)

次の段階に進もうと思ったのですが、邪魔過ぎたので、分離した形で「Numberiner」を作成したいと思い記事にしました。

(やっぱり、機能とデータは独立性がある方が良い!)

大まかな設計思想は同じなので、流す感じで説明します。

▽ 拡張機能公開していますので、複製して利用してもOKです!

構成

test DBは動的IDを割り振りたいDBで、Numberingerは動的IDを割り振るDBになります。

<DBとNumberingerの画像>

① 静的IDの割り振り

test DBにあるデータに対して、IDプロパティを追加します。

ここでは、A~Gまでのデータを入れて、IDプロパティを追加し、CとDとEは動的ナンバリングができている稼働か確認するため、削除しました。

こんな感じ
Numberinger側のDBは名前だけ

② Test DBとNumberingerをリレーションで接続

双方向リレーションで接続させます。

これで、指揮官であるNumberingerとtest DBの各ページの接続ができました。

既存のページはこのように手動でNumberingerと接続します。
新規に追加されるページは自動的にNumberingerと接続させたいので、
テンプレートをいじりNumberingerと接続されるように編集します。

ここで、ちゃんと自動で追加されるか確認するために、Hというページを追加してみます。

問題無いです!

③ Numberingerがtest DB内の各ページの静的IDを取得する

Numberinger側でロールアッププロパティを追加し、

このような設定で、静的IDの一覧を取得します。

この一覧表をtest DB側で取得させたいので、ロールアップで取得したデータを数式に変換します。

数式プロパティ
こんな感じ。

④ test DBの全ページでNumberingerの順番表を取得する

test DB側のロールアップで順番表を取得します。

また、同じように数式で順番表を取得します。

⑤ 動的IDを数式プロパティで作成する

数式は以下の様に入力します。

あとは、見えて欲しくないプロパティは全て非表示にします。

以上で、Numberingerを用いて、対象DBに動的IDを割り振ることができました。

いいなと思ったら応援しよう!