スペースモラトリアムノカミサマ

日記+コメント付きブックマーク+他人にも役に立つかもしれない情報など。
(更新情報: RSS(ツッコミ付き) / RSS(ツッコミ抜き) / LIRS)

最近の TrackBack:
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|06|07|08|09|10|
2011|01|02|03|07|10|11|
2012|02|03|04|07|08|09|
2013|01|06|07|
2014|02|08|09|11|
2015|09|
2016|01|05|
2017|07|
2018|05|07|
2019|07|
2020|08|09|10|12|
2021|05|
2022|03|

2006/10/10

_ [Perl] HTML::FillInForm に感動した

これまでもお名前はちらほら聞いておりましたが、初めて使いました。

素晴らしい…!

フォームの上部にエラーをまとめて表示して、入力した文字列もそのままHTML::FillInFormで復元されてます。簡素なエラー画面でブラウザの戻るボタンを押す必要もありません。戻るボタンを押したときにいままで入力していた物がなくなっているということもないです。

[シンプルなWebアプリなCGIを書いてみる@blog.nomadscafe.jpより引用]

そう、その「フォームに記入ミスがあったら、エラーを表示して戻らせるのではなく、記入済みの部分を埋めたフォームを再表示する」のは Web アプリ開発における基本中の基本ですが、それを実装するのはなにげにちょっぴり面倒で、プログラム側もテンプレート側も泥臭い冗長な記述になりがちでした。でも FillInForm 使うと、特にチェックボックスやラジオボタン、リストボックスがある場合は大幅に負担減ですよ。非常にすっきりしました。元となるフォームの作成があくまでテンプレートで行えるのも(が?)素晴らしい。

それにしても、自分が root 持ってるサーバでモジュール使いたい放題だと開発が実に楽になりますね…。

ものによってはファイル置くだけで済む Pure Perl なものも多いんでしょうが、apt-get と cpan 一発で済む手軽さには代え難いものがあります。

最近走らせたコマンド↓

apt-get install apache2
apt-get install libapache2-mod-fcgid
apt-get install libcgi-fast-perl
apt-get install libwww-perl
apt-get install libunicode-japanese-perl
apt-get install libtemplate-perl
apt-get install libhtml-fillinform-perl
cpan install Template::Plugin::FillInForm

使いたいと思う Perl モジュールのほとんどが公式パッケージ化されてる Debian にも感心します。