!!すでに入力したデータを修正するためのフォームを作る これはCardForm4Alpha2より使用できる機能です。 !データ新規入力用フォーム データ新規入力用フォームはすでにある[[BugTrackForm]]を使用します。 コメント保存のために{{formhidden comment}}を加えました。(2005/08/07追加) ,, ,投稿者,{{formtext user}} ,サマリ,"{{formtext subject,size=60}}" ,カテゴリ,"{{formselect category,本体,プラグイン,ドキュメント}}" ,優先度,"{{formselect rate,緊急,重要,普通,低}}" ,状態,"{{formselect stat,提案,着手,完了,リリース済,保留,却下}}" ,内容,"{{formtextarea msg,rows=10,cols=60}}" {{formhidden comment}} {{formsubmit 投稿}}{{formreset リセット}} !修正フォームを備えた保存テンプレートページ [[BugTrack-test]]を元に、{{bugstate}}の代わりにこれから作る修正フォームを備えた[[BugTrack-modify]]を作ります。 コメント保存のために%comment%を加えました。(2005/08/07追加) !!!%subject% *投稿者: %user% *カテゴリ: %category% *優先度: %rate% *状態: %stat% *日時: %time% !!内容 %msg% !!コメント %comment% {{comment}} ---- {{cardform BugTrackModifyForm,BugTrack-modify,%page%}} 最後の行が修正フォームを表示するための記述で、cardformの第3引数を「%page%」としているのがミソです。 これにより、実際に新規にデータを保存する際、この%page%の部分が自身のページ名に置き換えられ、cardformプラグインでの保存ページ名として渡されます。 !修正フォーム [[BugTrackModifyForm]]に修正用のフォームを作ります。 コメント保存のために{{formhidden comment}}を加えました。(2005/08/07追加) カテゴリ {{formselect category,本体,プラグイン,ドキュメント}} 優先度 {{formradio rate,緊急,重要,普通,低}} 状態 {{formradio stat,提案,着手,完了,リリース済,保留,却下}} {{formhidden user}} {{formhidden subject}} {{formhidden time}} {{formhidden msg}} {{formhidden comment}} {{formsubmit 変更}} 通常のフォームの様に記述しますが、注意点として修正元に含まれている、修正しない値をすべてformhiddenで書いてください。 これは、このフォームで送った情報'''だけ'''を元に修正ページが作られるためです。 このフォームを'''表示した時'''は元のページを読み、初期値を設定しますが、 '''送信して保存する時'''は元のページを一切見ません。新たに作り直すだけです。 したがって(hiddenでも)フォームに含まれないデータがあると、そのデータは消えてしまいます。 逆にいえばそうやって不要なデータを削除する事も、新たに追加する事もできます。 !テスト まずは次のフォームから適当に値を入力して新規データを保存します。 {{cardform BugTrackForm,BugTrack-modify}} その後、下の表から保存したデータのページに行き値を修正してみてください。 {{cardlist BugTrack-modify,ページ:%cardlist_pagename%,カテゴリ:category,優先度:rate,状態:stat,投稿者:user,サマリ:subject}}