はじめに
Notion Tips の第129回目は Notion Forms を既存のデータベースから作成する方法を解説します。
データベースから作成
昨日は「/form」コマンドから新規にデータベースと一緒に Forms を作成しました。すでにデータベースが存在している場合には、そのデータベースに Forms を追加することができます。Forms はビューではないので、Linked view には作成できず、必ずデータベース本体に追加することになります。以前、データベース : フルページというデータベースを作成していたので、そのデータベースに Forms を作成してみます。

ここで、テーブルビューの隣にある「+」をクリックしてメニューを出します。一番下に「フォーム」という項目が増えていることがわかります。

フォームを選択すると、以下のダイアログが表示されます。既存のプロパティのうちでサポートされている項目について質問を自動作成するか、最初から作成するかを聞かれます。今回は、どのプロパティがサポートされているのかを確認するために、「17件の質問を作成」を選んでみましょう。

生成された質問の確認
上から順番に生成された質問を確認してみます。昨日紹介したものは省略していきます。最初の 4 つは昨日と同じで、順番に名前 (Title)、タグ (Multi select)、セレクト、ファイル&メディアです。セレクトはすでに設定されたオプションが並んでいます。

次の4つも昨日紹介しています。マルチセレクト、URL 、数値、テキストです。マルチセレクトも登録済のものが並んでいます。

さらに5つ並べましたが、こちらも紹介済です。チェックボックス、メール、電話 (Phone number)、ユーザー、日付です。

ここからは今回新規で紹介するものです。たのデータベースに対するリレーションも質問が用意されていました。オプションは最大選択数だけのようです。Unlimited にすると複数選択可になります。

また、サブアイテムおよび依存関係は自己参照リレーションですので、通常のリレーションと同様に親アイテムとサブアイテムの質問が作成されていました。親アイテムは当然ながら一つしか設定できないので、最大1個まで選択可になっています。オプションは表示していませんが、最大選択数の部分が 1 になっています。

同様にこのデータベースは依存関係もテストしていたので、以下の二つの質問も用意されていました。依存関係はどちらも複数選択可能の質問になっています。

フォームのカスタマイズ
昨日、プロパティの説明が長くなってしまったので、フォームのオプションを説明しそこねていました。フォームもデータベースなので、オートメーションを追加することができます。これによってフォーム受付時にメールを送信したり、Slack に通知したりすることができます。オートメーションについては、後日詳細に解説したいと思うので、ここでは省略します。ここで、「フォームをカスタマイズ」としてみます。

「フォームをカスタマイズ」とすると、送信ボタンの設定と受付時のメッセージを編集できます。送信ボタンについては、ボタンの色と送信ボタンに表示するメッセージを変更できます。その下の確認のタイトルおよび確認の本文は、フォーム受付時に表示するメッセージです。ここにお礼の文章を書いたり、報酬の URL などを記述したりするとよいと思います。

リレーションに対するプレビュー
リレーションなどに対してどのような形でユーザに表示されるのかプレビューで確認してみましょう。ちなみに、これらは Web 公開のフォームでは表示されません。Web 公開フォームでプレビューしようとすると、以下のようなタイアログが表示されます。昨日のユーザーと同じ現象です。ここには表示されていませんが、リレーションも実際には表示されませんでした。

Web 公開でない形でプレビューを行うと親アイテムなどのリレーションも入力可能になっていました。クリックすると対応するデータベース内のページ一覧が表示されるので、検索して絞り込む形で入力します。

二つ目のフォーム
同じデータベースから二つ目のフォームを作成することが可能です。こちらは「最初から作成」を選んでみました。Linked view のようにデータベースだけでなく、別のページに作成できると管理が楽になっていいと思っています。フィードバックしたいと思います。

おわりに
今回は既存のデータベースにフォームを作成する方法を解説しました。現状ではデータベース本体にしかフォームを作成できないので、データベースのところに大量にフォームが作成されてしまう形になります。是非、Linked view のように管理したいページごとに Forms がおけるようになると便利だと思います。また、リレーションの絞り込みが設定できると、特定の日のタスクだけを選択できるようにするなどができて便利だと思います。こちらもフィードバックした方がいいでしょうね。