2011-09-21 4 views
23

レールでは、collections_pathnew_member_pathedit_member_pathなどのように、私たちの行動を指示するヘルパーがたくさんあります。root_pathまたはroot_urlはどこですか?

ただし、ルートはどこですか?ヘルパーはいつも私のホームページを指していますか?

+0

コマンドプロンプトで 'rake routes'を実行したときに表示されます。 – Zabba

答えて

44

これらのヘルパーは存在しますが、config/routes.rbで、前にあなたのルートURLを設定する必要があります。

root :to => "controller#action" 

あなたはその後root_urlroot_pathを使用することができます。

_pathヘルパーでリダイレクトを行うときにキャッチがあることに注意してください。リダイレクトするときは_urlを使用する必要があります(詳しくは@LanguagesNamedAfterCoffeeのコメントをご覧ください)。

+9

'redirect_to'を使うときはいつでも' root_url'を使わなければならないことを覚えておいてください。 – LanguagesNamedAfterCofee

+1

明確化のおかげで、私はそれを知らなかった。好奇心から:これは何が壊れていますか?それは単に動作しないか、何か他のものを壊す(戻るボタンなど)? –

+10

HTTPリダイレクトとフレンドリを実行する場合、HTTP仕様では完全修飾URLが必要ですが、一部の寛大なブラウザでは動作しますが、_pathは使用しないでください。 (Agile Web Development with Rails) – LanguagesNamedAfterCofee

関連する問題