イイネボタンを作る
概要
ボタンブロックを活用し、データベースページに対して「イイネ」をクリックした人をプロパティに反映したり、それを元に人数をカウントしたりできます。
これを応用すると、議事録の既読表明や人気投票なども作成できます。
ここでは、閲覧者がデータベースページを開いて内容を確認し、その結果としてページ内に設置された「イイネ」ボタンをクリックする、という運用を想定した設定例を紹介します。
手順
- まずは、いいねボタンを設けたいデータベースを作成し、以下のプロパティを設定します。
- イイネした人を反映するための
ユーザープロパティ - イイネした人の数をカウントするための
関数プロパティ(以下のコード参照)
if(length(prop("イイネした人")) > 0, length(replaceAll(prop("イイネした人"), "[^,]", "")) + 1, 0)
- 試しに手動で
イイネした人を入力し、関数がうまく機能することを確認します。
次に、データベーステンプレートを作成します。データベース右上の
新規の横にある下向きの矢印ボタンをクリックし、新規テンプレートをクリックします。この中に「イイネ」ボタンを設置することで、以後データベースに追加される新しいページにも簡単に「イイネ」ボタンが設定できるようになります。

/buttonでボタンブロックを呼び出します。
- 表示されるメニューから、
ページを編集を選択します。
- ボタンの編集画面が開くため、まずはボタン本体に表示させるアイコンとボタン名を設定します。
次に、
データベースを選択ボタンをクリックし、このページを選択します。こうすることで、ページに設置された「イイネ」ボタンを押すと、そのページの「イイネした人」プロパティが編集されます。

次に、
プロパティを編集のドロップダウンからイイネした人を選択します。これは、ボタンを押した時に編集したいプロパティを指定するところです。

デフォルトでは編集行為は
置換がセットされていますが、ここを追加に変更します。置換:既存の値の置き換え
追加:既存の値の有無に関わらず値を追加 → イイネした人が追加される
削除:既存の値を削除

その右側の欄が、追加したいユーザーを選択するメニューです。クリックして
ボタンをクリックしたユーザーを選択します。これで、「イイネ」ボタンをクリックしたユーザーが
イイネした人プロパティに追加されるように設定されました。
完了ボタンを押してボタン編集画面を閉じます。
- 「イイネ」ボタンの入ったデータベーステンプレートが完成したので、名前を付けて
戻るボタンで閉じます。
- これで、データベースに新しいアイテムを追加すると、「イイネボタン」を含むテンプレートが使えるようになっています。
- データベーステンプレートを適用し、ボタンを押してみると、このように動作します。