松尾です。 # 実は使ってないし今までこのスレッドにも出てきてなかったのですが… # いつか使わせてもらうときが来るのだろうと思ってます。 From: wakou / fsinet.or.jp > 遅れまして申し訳ありません。仕様変更というのは、現在はフォームやクッキー > のデータを常に Array で返しているものを、その名前に対するデータが1つ > の場合は、String にしてはどうかという案です。 僕は全部Arrayがいいです。Meeting2000で使っているルーチンではArrayを返 してます。 検討過程は以下の通り。 -- 前提条件 'name1' に対応するフォームがどういう形なのか、つまりデータが一つしかあ りえないのか複数ありえるのか、プログラマは知っている。 scenario1 テキストボックスの処理 scenario2 チェックボックスの処理 case a Arrayで返ってくる case b 複数の時はArray、一つの時はString case a scenario1 cgi["name1"][0]に対して処理する scenario2 cgi["name1"].each { ... } case b scenario1 cgi["name1"]に対して処理する scenario2 if cgi["name1"].kind_of?(String) cgi["name1"]に対する処理 else cgi["name1"].each{ ... } end aの方が簡素だと思います。 # 実際の処理に入る前にデータがあるかどうかは、チェックしているものとし # ます。 '[0]'が確かにちょっと気持ち悪いですが、それは仕方がないでしょう。 -- 何か読み間違えていたらごめんなさい。