From: "青山 和光" Date: 1998-03-16T08:01:04+09:00 Subject: [ruby-list:7118] Re: rfc822.rb In-Reply-To: [ruby-list:7067] rfc822.rb やまださん、おはようございます。 >>[ruby-list:7067] rfc822.rb >>From: akira yamada / やまだあきら >> >>このページ… というか CGI スクリプトを書いてて気付いたんですが >>cgi-lib.rb って include?() がないんですね(^_^;) query = CGI.new p query.inputs.include?("a") あ、query.include?() が無いんですね。 なんとなく query["a"] 等の表現は CGI オブジェクトが CGI の入力だけを指 しているようで違和感があり、いつも query.inputs["a"] のようにして使っ ていたので気が付きませんでした。 Perl の CGI.pm にしても query->param("a") といった方法を取っていますし、 HASH クラスのメソッドが活きますから、ちょっと記述は長くなりますが、 query["a"] ではなく、query.inputs["a"] の記述の方が良いと思います。 ということで、include? 等を追加せずに、使用説明の変更程度ではいかがで しょうか? # EXAMPLE: # require "cgi-lib.rb" # foo = CGI.new # foo['field'] <== value of 'field' # foo.keys <== array of fields # foo.inputs <== hash of { => } # foo.inputs['field'] <== value of 'field' # foo.inputs.keys <== array of fields foo.inputs の方を今後の推奨使用方法としても良いなら、foo['field'], foo.keys の説明は削った方が良いかもしれないですね。 青山 和光 Wakou Aoyama