Notionのデータベースをそれなりに使っていると、レコードごとにユニークIDを振り出してくれる機能が欲しくなってくる。
数日前にも、複数人で作業分担して進める工程進行表を作って使っていて、unique id機能が欲しくて悶絶した。
- 多数のレコード (行) があるデータベースを、複数人でがしがし利用し、必要ならフィルタリングや、順番入れ替えだってやる。
- そのなかの特定の行を、文字でも口頭でもブレなくわかりやすく伝えたい。いちいちタイトルや内容を読み上げてる時間も、それを聞き取ってもらう時間も、お互いにもったいない。
- これを効率よく確実にやるには、やっぱりauto increment的な列があるといいんだけど、ないんだよなぁー
- なので、行の途中挿入とかが起きると、新たな手順番号を、番号の最大値+1を僕が判断して手で入力していた。ばかばかしいよね。
- NotionのデータベースでユニークっぽいIDを作成する に、がんばって実現してらっしゃる例もあったが、本当はこんなことしなくていいはず。
と思っていたら、今日みたらIDというプロパティが生まれてるじゃないですか
下の例では、工程番号という名前の「ID型」プロパティを作り、一番左に移動している。プリフィクスには「ODEN」を指定している。
行をつくるたび、ODEN番号は勝手に増えてくれる。 行の番号を入れ替えても、ソートしても平気だ。 行を消したらちゃんとその番号は欠番になる。
Notionのリリースノートにはまだ載ってない感じ。サイレントリリースかな。
あと、Notionのデータベースには「名前」のテキスト型が必須で、おそらくこいつが中でindexになってる気がするのだが、いっつもこいつが邪魔感がぬぐえないので、ID型を設けたデータベースからは「名前」カラムを削除可能になるとすっきりするんだけど、後方互換性の面で難しいのかもなー