不定期に記録する入力欄を設ける

例えば学習成果物を何度もアップロードしたいが履歴は残したかったり、課外活動の記録を何度も残していきたい、そのための入力項目を用意したいとします。 そんなときは<appendable_card>を使います。

appendable card
成果物をいくつも登録可能な入力項目を設置する例
<doc id="carte" title="カルテ" order="1">
  <doc_template>
    <cards>
      (1)
      <appendable_card
        id="contents"
        title="成果物"
        append-auth="self"
        edit-protect-setting="false"
        >
        <field id="contents" ref="contents"/>
      </appendable_card>
    </cards>
  </doc_template>
  <field_templates>
    (2)
    <field_template
      id="contents"
      type="file"
      title="成果物"
      edit-auth="self"
    />
  </field_templates>
</doc>
1 <appendable_card> のappend-auth属性は、回答の追加と削除が可能なユーザを設定します。
2 <field_template> のedit-auth属性は、一度保存された回答を編集可能なユーザを設定します。

また、学生が複数回入力して溜まった回答を、カテゴリごとに分類して表示できます。

categolized

画面下に、登録済み回答がカテゴリごとに分類されています。

このようなレイアウトに切り替えるには、<appendable_card> にlayout属性をつけ、"categorized"とします。また、category-field-id属性で、分類する基準とする <field> のid属性を指定します。例えば以下のようになります:

<doc id="carte" title="カルテ" order="1">
  <doc_template>
    <cards>
      <appendable_card
        id="contents"
        title="課外活動"
        append-auth="self"
        edit-protect-setting="false"
        layout="categorized"
        category-field-id="category"
      >
        <field id="category" ref="category"/>
        <field id="description" ref="description"/>
      </appendable_card>
    </cards>
  </doc_template>
  <field_templates>
    <field_template
      id="description"
      type="text"
      title="活動内容詳細"
      edit-auth="self"
    />
    <field_template
      id="category"
      type="select"
      title="カテゴリ"
      edit-auth="self"
    >
      <option value="サークル・部活">サークル・部活</option>
      <option value="ボランティア">ボランティア</option>
      <option value="その他">その他</option>
    </field_template>
  </field_templates>
</doc>