
目次
作った型を、別の場所にもう1つ用意したい。案件ごと、月ごと、部署ごとに同じ形を配りたい。
画面でならボタン1つです。ただ、外から自動でやろうとすると、話が変わります。
23種類のブロックを置いたページを作って、丸ごとコピーできるかを測りました。
外からは「複製」ができません
まず、前提のところから。
読んで、作り直すしかありません
画面にある「複製」にあたる操作が、外からは用意されていません。中身を読んで、別の場所に同じものを作り直す。これが唯一の方法です。
単純な作業に見えます。読んだものを、そのまま書き込めばいいだけのはずです。
ところが、そうはいきませんでした。
手作業でやるには、多すぎる場面があります
1つや2つなら、画面から複製すれば済みます。外から自動でやりたくなるのは、こういう場面です。
| 場面 | 配る数 |
|---|---|
| 案件が発生するたびに、案件用のページを作る | 月に何十件 |
| 月初に、その月ぶんの記録ページを全部作る | 部署の数だけ |
| 取引先ごとに、同じ管理ページを用意する | 取引先の数だけ |
| 研修の受講者ごとに、同じ課題ページを配る | 受講者の数だけ |
どれも件数が読めないか、多いかのどちらかです。手で複製していると、作り忘れや作りすぎが出ます。
23種類を置いて試しました
見出し、段落、箇条書き、チェックリスト、トグル、引用、コールアウト、コード、区切り線、数式、ブックマーク、埋め込み、画像、目次、パンくず、段組み、表。
それに加えて、子ページ、子データベース、同期ブロックも置きました。合計23種類です。
これを読んで、空のページに書き戻します。
読んだものを、そのまま書き戻せません
最初の壁です。
23種類のうち、6種類が断られました
読んだ内容を手を加えずに送ったところ、6種類で断られました。理由はどれも同じでした。
「この項目は、中身があるか、そもそも無いかのどちらかにしてください。空っぽで送らないでください。」
読むと返ってくるのに、書くと怒られます
ここが分かりにくいところです。その項目は、読んだときには「空っぽ」という値で返ってきます。
返ってきたものをそのまま送り返しているだけなのに、断られる。読むときの形と、書くときの形が違います。
| 空っぽの項目は | |
|---|---|
| 読むとき | 「空っぽ」として返ってくる |
| 書くとき | 「空っぽ」を受け付けない |
空っぽの項目を落とすと、20種類が通りました
送る前に、空っぽの項目を全部取り除きました。すると23種類のうち20種類が通りました。
装飾も運べています。太字も、文字色も、そのまま入りました。トグルの中身も、表の行も、段組みの左右も入っています。
ここまでは、ひと手間で解決します。問題は残りの3種類です。
落とす処理は、入れ子の奥まで必要です
1つ注意があります。空っぽの項目は、ブロックの一番外側だけにあるわけではありません。
トグルの中の段落、段組みの中の段落、表の中の行。入れ子になっている中身にも、同じ項目が付いています。
外側だけ落としても通りません。奥まで全部たどって落とす必要があります。実際、最初に断られた6種類のうち、トグルと段組みは中身のほうが原因でした。
空っぽの扱いが、真逆になる2つ
先に、いちばん厄介なところを書きます。
落とすと通るもの、落とすと落ちるもの
残った3種類のうち1つが、同期ブロックでした。同じ内容を複数の場所に置いて、片方を直すともう片方も変わる、あの機能です。
これが断られた理由は、さっき空っぽの項目を落としたせいでした。
| 項目 | 空っぽを |
|---|---|
| ほとんどのブロック | 落とさないと通らない |
| 同期ブロック | 落とすと通らない |
一律に落としても、一律に残しても失敗します。
同期ブロックでは、空っぽに意味があります
理由があります。同期ブロックには「どこと同期しているか」という項目があって、それが空っぽであること自体が「これが元です」という意味を持っています。
だから落としてはいけません。空っぽのまま、空っぽだと明示して送る必要があります。
コピーか、同期か、選ぶことになります
ここで分かれ道があります。同期ブロックは、2通りの置き方ができました。
| 置き方 | 結果 |
|---|---|
| 「これが元です」として置く | 中身は同じ。ただし同期しない |
| 元を指すように置く | 本当に同期する |
コピーのつもりで前者を選ぶと、見た目は同じものができます。でも、元を直してもコピー先は変わりません。
共通の注意書きを全部の型に入れておきたい、というような用途なら後者です。意図して選んでください。
画像は、200が返るのに消えます
ここがいちばん危ないところでした。
画像には2種類あります
Notionの画像には、外のアドレスを指しているものと、Notionの中に入っているものがあります。
| 画像の種類 | コピーすると |
|---|---|
| 外のアドレスを指している | そのまま運べる |
| Notionの中に入っている | 運べない |
読んだままでは、書き戻せません
Notionの中にある画像を読むと、60分で切れるアドレスが返ってきます。
それをそのまま書き戻そうとすると、断られます。書くときには、外のアドレスか、新しくアップロードしたものしか受け付けないからです。
アドレスを渡すと、通ってしまいます
では、と考えます。返ってきたアドレスを「外のアドレス」として渡せばいいのではないか。
これは通ります。エラーも出ません。
ところが、置いたあとに読み直すと、画像ブロックの中身が空になっていました。
| 読み直したときの中身 | |
|---|---|
| 元の画像(外のアドレス) | アドレスが入っている |
| コピーした画像(外のアドレス) | アドレスが入っている |
| コピーした画像(期限つきのアドレス) | 何も入っていない |
成功の返事が返ってきたのに、画像がありません。置いた直後に確かめない限り、気づけません。
運ぶには、落として上げ直すしかありません
Notionの中にある画像を別の場所へ運ぶなら、中身をいったん手元に落として、コピー先でアップロードし直すことになります。
アドレスを渡すだけでは済みません。画像の数だけ、落として上げる処理が要ります。
図にすると、こういう落ち方です
別に作り直すのは、2つだけです
整理します。23種類のうち、ブロックとして置けなかったのは2つでした。
| 種類 | どうなったか |
|---|---|
| 20種類 | そのまま置けた(空っぽの項目を落とせば) |
| 同期ブロック | 置けた(空っぽを落とさなければ) |
| 子ページ・子データベース | ブロックとしては置けない |
これにNotionの中にある画像が加わります。こちらは置けたように見えて中身が空になるので、数のうえでは通っています。
子ページと子データベースは、別に作ります
ページの中にあるページと、ページの中にあるデータベース。この2つは、ブロックとしては置けませんでした。
置けないというより、ブロックの種類として存在していません。ページを作る操作、データベースを作る操作を、別に呼ぶことになります。
順番が崩れます
これが地味に面倒です。ブロックは上から順に置いていけますが、子ページと子データベースだけは別の操作になります。
そのため、元のページで何番目にあったかを自分で覚えておいて、あとから並べ直す必要があります。
ページの構造が複雑なほど、ここの手間が増えます。型を配る仕組みを作るなら、子ページを入れ子にしすぎないほうが楽です。
入れ子が深いほど、回数が増えます
子ページの中にさらに子ページがある場合、その中身も同じ手順で作り直すことになります。
| 型の構造 | 必要な作り直し |
|---|---|
| 子ページなし | 0回 |
| 子ページが3つ | 3回 |
| 子ページ3つ、それぞれの中にも3つ | 12回 |
深さが1段増えるだけで、回数が一気に増えます。配ることが前提の型なら、階層は浅くしておいてください。
同じ内容でも、子ページに分けずにトグルで畳めば、1回で運べます。見た目もあまり変わりません。
ビューは、そもそも見えません
子データベースを作り直せたとしても、ビューの設定は運べません。外からは見えないからです。
列は運べます。並べ替えや絞り込みの設定は、コピー先で作り直すことになります。
型を配るときの考え方
ここまでを踏まえて、実務の話をします。
運びやすい型と、運びにくい型があります
| 型の作り | 外から配るときの手間 |
|---|---|
| 文章と表だけ | ほぼ手間なし |
| 画像が外のアドレス | 手間なし |
| 画像をNotionに入れている | 落として上げ直す |
| 子データベースがある | 別に作り、並べ直す |
| 子ページが入れ子になっている | 階層ごとに作り直す |
配ることが決まっているなら、作る段階から上2つに寄せておくと楽です。
画像は、外に置くほうが配りやすいです
型の中で使う画像は、外のアドレスを指す形にしておくのがおすすめです。そのまま運べます。
ロゴや説明図のような、型の一部として使う画像がこれにあたります。1か所に置いて、全部の型から同じアドレスを指す。あとで差し替えるときも1か所で済みます。
配ったあとに、必ず読み直してください
今回いちばんの教訓です。成功の返事は、あてになりません。
| 確かめること | 見るところ |
|---|---|
| ブロックの数が合っているか | 元と配った先を数える |
| 画像が入っているか | 中身が空でないか |
| 子ページが揃っているか | 別に作ったぶんを数える |
1件目を配ったところで止めて、この3つを確かめる。それから残りに流してください。
配る手順にすると、こうなります
| 順番 | やること |
|---|---|
| 1 | 元の型を読む(入れ子の奥まで) |
| 2 | 空っぽの項目を落とす。同期ブロックだけ残す |
| 3 | ブロックを順に置く |
| 4 | 子ページ・子データベースを別に作り、元の位置に並べ直す |
| 5 | Notionの中にある画像を、落として上げ直す |
| 6 | 読み直して、数と中身を確かめる |
6番まで含めて1セットです。5番と6番を省くと、画像のない型が配られます。
型のほうを直すのが、いちばん早いです
ここまで読むと、手当ての多さが気になると思います。ただ、手当てが要るのは特定の作りをしている型だけです。
配ることが分かっているなら、型から子ページを外し、画像を外のアドレスに変える。それだけで、4番と5番が丸ごと要らなくなります。
仕組みを複雑にするより、配りやすい型に直すほうが早い場面は多いです。
よくある質問(FAQ)
画面の「複製」と同じことは、外からはできないのですか。
同じ操作は用意されていません。読んで作り直す形になります。今回の範囲では、20種類のブロックはそのまま運べました。残りは手当てが要ります。
空っぽの項目を落とす、というのは全部のブロックでやっていいですか。
同期ブロックだけは例外です。そこだけ、空っぽであること自体に意味があります。ほかのブロックは落として構いませんでした。
Notionの中にある画像を、コピー先でも使いたいです。
中身を手元に落として、コピー先でアップロードし直してください。読んだアドレスをそのまま渡すと、エラーは出ないのに画像が入らない状態になります。
コピー先の同期ブロックを、元とつなげたいです。
元のブロックを指すように置けば同期しました。そうではなく独立させたいなら、「これが元です」として置いてください。置き方で変わります。
子データベースの中の行も運べますか。
データベースを作り直したあと、行を1件ずつ作ることになります。行の追加は1件ずつしか送れないので、件数が多いと時間がかかります。
23種類以外のブロックはどうなりますか。
今回試していないので分かりません。Notionには今回扱っていない種類もあるので、配る前に1件だけ試して、数が合うかを確かめてください。
1件目を配ったら、読み直してください
画像は、成功の返事が返ってきても中身が空のことがあります。ブロックの数と、画像の中身と、子ページの数。この3つを確かめてから残りに流してください。