>>791 >>792
うむ、俺も今までは各種コントローラーごとに

def owner_check
 if current_user.id != post.user_id
  レコード編集・削除権限がない場合の処理
 end
end

こんなメソッドをいちいち書いてbefore_filterでシコシコとedit や destroyに適用してた

しかし、CanCanを入れると
can, [:edit, :destroy], Post, {user_id = current_user.id}
を一行入れるだけで済むようになる

しかも、そこらへんの権限については
柔軟な対応可能が可能になり短い文をroutes.rbのように書き出すだけで事済むようになる。

20文字くらいを一行書くだけで、もはやコントローラーを触る必要がなくなった。しかもCanCanの他の機能のload_resourceは超便利!

みんな@post = Post.find(params[:id])

を各メソッドごとに書くか
before_filterで@postを取得してるだろ?これをする必要がなくなる

つまりコントローラー内から
@post = Post.find(params[:id])
の表記を全て削除できる

なんぞこれ!?ってくらい便利
CanCanって海外だとdeviseくらいに多く使われてるし何よりdeviseとの相性が良すぎる。なんせCanCanの作者は俺たちのお師匠ライアン様(Railscast)だからね