データフォームの作り方

Wikidotは通常のページをカテゴリに収めますが、それはデータフォームを使用する場合も同じです。各データフォームのページは特定のカテゴリの1ページです。カテゴリは単一のデータフォームを持つ事ができ、ここで設定したデータ構造はそのカテゴリの全ページに適用されます。その為、1つのカテゴリに通常のページとデータフォームのページを混在させる事はできません。

データフォームを作成する場合、下記の手順を実行する必要があります。

1) データフォームを適用する予定のカテゴリにテンプレートページを作る必要があります。例えばbandというカテゴリにテンプレートを作る場合は、band:_templateという名前のページを作らなければなりません。

2) [[form]]..[[/form]]で括られた区域をデータフィールドに作る必要があります。使用する事ができる様々なフィールドの型(text,select,checkbox,file,wiki,static,hiddenそしてパスワード)については本ドキュメントの「フィールドの型」を参照してください。

データフィールドはそれぞれの行が正しくインデント(段落分け)されていないと正しく表示されません。その為、下記の例で示す様なインデントが重要になります。データフィールドの構造は下記の例の通りです。ただし必ずしもフィールドの型とwidthを指定する必要がありません。フィールドの型を指定していない場合、そのフィールドは自動でtext型になります。幅も必須ではありません。

[[form]]
fields:
  type:
    label: Music type
    type: select
    values:
      0: Classical
      1: Country
      2: Folk
      3: Indie
      4: Jazz
      5: Pop
      6: Rock
    default: 6
  bandimage:
    label: Image
    type: file
  bandwebsite:
    label: Band website
    type: url
  current:
    label: Currently Recording
    type: select
    values:
      0: "Yes"
      1: "No"
    default: 0
[[/form]]


全てのフィールドでコロンと値の間にスペースが必要です。

結果
label: Music type 正しく表示される。
label:Music type セーブ時に不正な設定を行った箇所がエラーメッセージで表示される。

[[form]] ..[[/form]]によるデータ構造の定義付けをおこなった後、そのカテゴリ内の任意のページの追加もしくは編集をしようとした場合、通常のページ編集ではなくフォームの編集画面が表示されます。

エラーの確認

Wikidotはコロン(:)の後に半角スペースがあるかどうかについて気に留めていませんでしたが、現在は不正なスペース入力に対する厳密なエラー判定を行うようになりました。しかし、Wikidotの"第一人者"であるtsangktsangk氏は、あなたのデータフォームが正しく構築され、また正しくスペースを入れられているか確認するアプリを開発しました。このアプリは下記のURLに置いてあります。

http://community.wikidot.com/app:convert

あなたが書いたデータフィールドをコピーし、上記のアプリケーションの"input"の中に貼りつけてください。その後を押すと、データフィールドのエラーがあった場合、修正されたコードを出力します。


サイトマネージャーの設定

データフォームが適用されたカテゴリも通常のカテゴリと同じ様に権限を設定する事ができます。例えば、ページを編集できるのはそのページの作成者だけにする事も可能です。

またデータフォームが適用されたページには自動採番の機能をつける事をおすすめします。これにより、pagenameが重複するリスクを避ける事ができます。自動採番の設定はサイトマネージャーから

sautonumbering of pages

で設定できます。

特に指定がない限り、このサイトのコンテンツには次のライセンスが適用されます: Creative Commons Attribution-ShareAlike 3.0 License