現在、RailsTutorialを学習中の駆け出しエンジニアの者です。
railsヘルパーの一種であるpathとurlの違いを理解できていませんでしたので、自分なりに調べてみました。
_pathは相対パス、_urlは絶対パス
(例)
root_path => '/'
root_url => 'http://www.example.com/'
new_user_path => '/users/new'
new_user_url => 'http://www.example.com/users/new'
相対パス
_pathは相対パスを示しています。相対パスはアプリケーションから見て、どのファイルやフォルダの位置にあるのかを示します。上の例であるnew_user_pathで説明しますと、viewフォルダの中のusersフォルダの中のnew.html.erbを呼び出していることになります。
絶対パス
_urlは絶対パスを指定しています。絶対パスとは、そのページをインターネットからアクセスする際のurlを示します。
なので、今いる位置に関係なく呼び出すことができますし、外部のサイトを呼び出すこともできます。
使用方法の違い
Railsの開発においての_pathと_urlの使用方法の違いを説明します
_pathの使用方法
_pathはredirect_to以外でよく使用します。
例えばlink_toなどで使用します。