using cancan
投稿者 okkez
ryanb’s cancan at master - GitHub を使ってみた。
元々 be9’s acl9 at master - GitHub を使っていたのだけど、 ちょっと手の込んだことをやろうとすると、やり方がわからなくなったので cancan を使うことにした。 Rails Authorization in The Ruby Toolbox でも人気だったし @kakutani にも紹介してもらったし。
ほとんどのことは Home - cancan - GitHub の Wiki を見ればわかる。これで分からない場合は rdoc.info :: cancan を見ればいいはず。
acl9 に比べていいところは
- 権限に関するコードが一ヶ所に書けるところ
- 権限だけのテストを簡単に書けるところ
- 複雑な権限管理もそれなりにシンプルに書けるところ
- たぶん DB に権限情報を書いてそれを読み込むように書いても使えるところ
良くないところは、権限のコードが長くなってしまうことくらい。 これはテストを書けば、特に問題にはならないかもしれない。 あるいは DB に権限データを登録するようにしてしまえば、シンプルになるだろう。


