[#38470] ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...>

青木です。

25 messages 2003/10/07
[#38475] Re: ruby-dev summary 21403-21530 (draft) — maili31s@... (SugHimsi==SUGIHARA Hiroshi) 2003/10/07

すぎむし。

[#38480] Re: ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...> 2003/10/08

青木です。

[#38481] marshal_dump (was Re: ) — m_seki@... 2003/10/08

[#38484] Re: marshal_dump (was Re: ) — matz@... (Yukihiro Matsumoto) 2003/10/09

まつもと ゆきひろです

[#38486] Re: marshal_dump (was Re: ) — Masatoshi Seki <m_seki@...> 2003/10/09

咳といいます

[#38489] exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to>

<http://www.unixuser.org/~ysjj/diary/?200310a&to=200310082#200310082>

29 messages 2003/10/09
[#38490] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/09

新井です。

[#38503] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/10

In Message-Id: <20031010.082218.74733862.JCA02266@nifty.ne.jp>

[#38505] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/10

新井です。

[#38507] Re: exit status on exit! — matz@... (Yukihiro Matsumoto) 2003/10/11

まつもと ゆきひろです

[#38514] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/11

In Message-Id: <1065883639.405037.23137.nullmailer@picachu.netlab.jp>

[#38515] Re: exit status on exit! — WATANABE Hirofumi <eban@...> 2003/10/11

わたなべです。

[ruby-list:38592] cgi.rbのremove_const

From: Takashi Kanai <kanai@...4u.or.jp>
Date: 2003-10-16 15:28:03 UTC
List: ruby-list #38592
 こんにちは、金井です。

cgi.rbを使ってWEBアプリを開発しています。
RxCGI という名前の、CGIのサブクラスを作成しているのですが、次のような
ワーニングが出ます。
環境は Win2000SP4/Apache2.0.47/ruby1.8.0ですが、1.6.8でも同様です。

C:/usr/local/lib/ruby/1.8/cgi.rb:1963:in `class_eval': (eval):1:in 
remove_const': constant RxCGI::CGI_PARAMS not defined (NameError)
    from C:/usr/local/lib/ruby/1.8/cgi.rb:1963:in `class_eval'
    from C:/usr/local/lib/ruby/1.8/cgi.rb:1963:in `initialize'
    from C:/usr/local/lib/ruby/1.8/cgi.rb:1961

これは、次のような記述で引っかかっています。

  self.class.class_eval("remove_const(:CGI_PARAMS)")
  self.class.class_eval("remove_const(:CGI_COOKIES)")

self.classはこの場合はCGIではなくRxCGIだからCGI_PARAMという定数は定義
されていないことになるわけです。そこで次のように書き換えたところ、
ワーニングは出なくなりました。

  CGI.class_eval("remove_const(:CGI_PARAMS)")
  CGI.class_eval("remove_const(:CGI_COOKIES)")

これで問題なく動作しているのですが、今ひとつ自信が持てません。
・上記のような修正で正しいのか
・そもそもCGIのサブクラスを作るという使い方は想定されていないのか
どうしたものでしょうか。

--
金井 隆 (KANAI Takashi)
kanai@nn.iij4u.or.jp



In This Thread

Prev Next