ruby

Rack::Auth::Digest::MD5 のつかいかた

Rack::Auth::Digest::MD5 は opaque を渡さないといけない((つうかそもそも opaque は optional なはずなのに Rack::Auth::Digest::MD5 では必須パラメータってのも変なんだけど。))ので素直に書けないと思いがちだけど,現在の Rack::Auth::Digest::MD5 は…

DataMapper でカスタムリレーション

DataMapper - Associations の「Customizing Associations」に書いてある。 User と Message というモデルがあり,Message には宛先が(複数)指定できる,とする。できるだけ規約ベースで書くと以下のようになる。 class User include DataMapper::Resource p…

Ruby から Net::LDAP で ActiveDirectory にアクセスする

Ruby には LDAP 用の実装がいくつかあるみたいだけど、Net::LDAP (ruby-net-ldap) なら Pure Ruby の実装らしいので、とりあえずそれを使うことにしました。ほとんど ActiveDirectoryサーバーを使ったLDAP認証(Rubyから) - 与太郎プログラマの日記 のコピ…

DataMapper での Associations に Hook をからませる

DataMapper での One-To-Many-Through - daily dayflower の続き。下記はあくまで説明のためのサンプル((まじめにアプリとしてインプリメントするなら,単に User や Mail モデルに削除フラグ(というか available フィールド?)を用意してそこを操作するだ…

DataMapper での One-To-Many-Through

DataMapper 0.10.1 が対象。単純な One-To-Many ではなくて、ひとつ間にテーブルをかます One-To-Many-Through のおはなし。たとえばユーザ・ユーザ間のメールのやりとりをモデルに起こすとして、あるユーザが複数のユーザに同時に同じメッセージを送ること…

Capistrano で rsync

Capistrano によるファイル転送手段で標準で用意されてる方法は upload や put でファイルをアップロードする(scp / sftp 経由) Git や Subversion などの SCM からファイルをチェックアウトする であり,rsync はない(と思う)。なので,Capistrano で r…