« 02.23 足の感覚がなくなった | ココ | 03.02 開発者って何をする人なんやろう »

2009年2月24日

DAVのRails実装を試した  このエントリーを含むはてなブックマーク 

先日のプラグインのインストール方法をメモっておきます。

$ script/plugin install acts_as_taggable_on_steroids
# gem install will_paginate

やっぱりプラグインのインストールがどうにも手間な気が。script/pluginコマンドでのインストールは各プロジェクトにファイルが残るから容量の無駄っぽく見えるけど、結局のところWindowsでも同じような形でDLL Hellを解消させることになってしもたんやから、何が何でもgemっていうのもなぁ。gemとscript/pluginで揺れ動いてるのは分からんでもないけど(必要なプラグインはgemから自動的にダウンロードさせるような仕組みを作ってあるけど、そうするように自分でコードを組まんとあかん)。やっぱり、script/pluginのほうが開発者にとっても利用者にとってもシンプルで分かりやすいんとちゃうかなぁ。

あと、will_paginateのscript/pluginでのインストールは今もいけるけど、レポジトリがsvnではなくgitになってしまってる。gitは最近の流行のようで、svnから乗り換える人もこれから増えるんやろうね。でも、gitクライアントをわざわざ導入せなあかんのよね…使おうと思ったら。どうにかならんもんでしょうか。

そんで、DAVについていろいろ見てたらRailsでDAVをするプラグインを見つけてしまったので試してみることに。WebDAVは、簡単に書けばFTPやらSFTPを使わなくても、HTTP(S)のポートだけを使ってファイルのやり取りができるようになる仕組み(WindowsではWebフォルダ)なんやけども、ApacheのDAVをそのまま使うとユーザーがapacheになってしまうからどうしようかなぁと思ってたんよね。でもRailsで実装してるのがあれば、読み書きするファイルの所有者はRailsを動かしてるユーザーになるからファイルの管理がFTP並みに楽になる。HTTPなので認証を通して処理を振り分けるなんてことも簡単になる。これだからやっぱりDAVは面白そう(けどそこから先のアイデアがなかなか出てこん)。

$ script/plugin install http://svn.liverail.net/svn/plugins/railsdav
# gem install unicode mime-types

日本語が使えない、って書いてあったけど、無理やり使えるようにした。…直接開いたら化けるけど、ダウンロードとアップロードに日本語は使える。なんでiconvで'latin-1'→'utf-8'なんてことをしてるんやろう? そりゃ日本語使えんでしょう(WinXPのWebフォルダでのファイル名のやり取りはutf-8みたいやねんけど、昔のプログラムじゃCP932とかあるから困りもの)。Ruby以外じゃ文字コード判定のプログラムがいくつか出てるのに、Rubyじゃあんまりそんな情報ないな…なんでやろう。

Apacheモジュールでのmod_dav+mod_encodingが意味なさないから日本語対応は独力でしないとあかんのが苦しい。自分で実装しようと思ったならCGI実装になるやろうけど、CGIで遅い処理がモジュールになってるんでは…と思うとなんか実装して使えるんやろうかという思いにもなる。今回mongrel+railsdavという一種のCGI実装っぽい実装を試して速度的にそれほど気にならないってのが分かった。日本語処理がちょっとネックになるけど。

By ただ at 23:19 カテゴリー ; プログラミングとか

« 02.23 足の感覚がなくなった | 02月の記事 | 03.02 開発者って何をする人なんやろう »




トラックバック

このエントリーのトラックバックURL:
http://pinmarch.sakura.ne.jp/mt/mt-tb.cgi/1374