Hikiを読む(3)
Rubyで書かれたWikiエンジン、Hikiを読んでみます。今回は動かしながら研究します。
- まず、動かしました。
- Windowsで/usr/bin/envがなかったのでちょっと手間取ったけれど、動きました。
- .htaccessで、設定ファイルを個別にdeny from allしています。なるほど。
- hiki/messagesの下に、en.rb, ja.rbなどのメッセージファイル(Rubyのプログラム)があります。Messageというモジュールになっている。なるほど。
- データベースでYAMLで保存するというのはないのかしらん。
- ri PStoreを読みました。バイナリファイルができます。
- ri CGIを読みながら、ri CGI::HtmlExtensionを読みます。
- CGI::HtmlExtension
- "Modules Http3, Http4..."と書いてあるのはtypoかもしれません。
- くたびれたのでここまで。
- cgi.params["rubyco"].classはArrayなんですね。
elseとensure
Rubyの例外処理で、elseはrescueしなかった場合だけ実行します。ensureはrescueしてもしなくても実行します。
for i in 1..3 begin puts "i = #{i}" if i == 1 raise SystemCallError, "one"; elsif i == 2 raise StandardError, "two"; end rescue SystemCallError => e puts "SystemCallError> $! = #{$!}, e = #{e}" rescue StandardError => e puts "StandardError> $! = #{$!}, e = #{e}" else puts "else" ensure puts "ensure" end end
実行結果です。
i = 1 SystemCallError> $! = unknown error - one, e = unknown error - one ensure i = 2 StandardError> $! = two, e = two ensure i = 3 else ensure