Railsの*_pathと*_urlに関するメモ

RailsによるアジャイルWebアプリケーション開発 第4版のp.120、David曰く」で解説されてます。

  • *_urlは絶対パス*1で、redirect_toで用いる*2
  • *_pathはルート相対パス*3で、redirect_to以外ではこれで問題ない。特にlink_toなんかでは、無駄な出力が省けるので推奨される。

ちなみに、これらの自動的に宣言される特殊なパスは$ rake routesで確認できます。一番左のカラムに、_url及び_pathを加えればOKです。また、この命名はconfig/routes.rbで決定されるようです*4

*1:http://.../...

*2:HTTPの302リダイレクトの仕様上、絶対パスを使うのが妥当

*3:/../..

*4:今ひとつわかってないから、今度config/routes.rbについてもまとめようかな