Trac/MultiSelectListPlugin

 Trac0.11のTicketシステムにおいては、複数選択を許容するSelect/Optionは使用できません。ってことで、擬似的に(?)複数選択可能なSelect/Optionを使えるようにするためのプラグインを作ってみました。
 内容としては、ITemplateStreamFilterでTextFieldタイプの入力域をSelect/Option形式に置換して出力しています。なお、選択された項目は、DBにはカンマ区切りの1つの値として登録されます(IRequestFilterで値を書き換えています)。

 ダウンロードはこちらから: MultiSelectList-r49.zip (2.7K)

設定方法

カスタムフィールドの追加
 Text形式でカスタムフィールドを追加します。
 

複数選択を可能とする項目を登録
 先ほど追加したカスタムフィールドを登録します。なお、複数ある場合は、カンマ区切りで登録します。
 

trac.iniで項目一覧を定義

[multiselectlist]
fieldname = multivalue
multivalue.values = ,選択項目1,選択項目2,選択項目3,選択項目4,選択項目5

 こんな感じで、選択項目の一覧をカンマ区切りで登録します。

チケット入力画面

チケット入力(編集)画面
 4行が表示されるリストで表示されます。ctrlキーを押しながらクリックすることで、複数項目を選択することが可能です。
 

チケット登録結果
 DBには選択項目がカンマ区切りで登録されます。編集域においては、自動的に区切って処理します。なお、空白の項目は無視されます(選択して登録しても、無視されます)。
 

TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/3959/43028621

Listed below are links to weblogs that reference Trac/MultiSelectListPlugin:

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.