自分の Web サイトに Rails 3 のブログを置きたいとします。それが唯一のものになるとします。Rails を使用して実装したいのですが、Rails が生成する URL が気に入りません。次のような URL を希望します。
example.com/2012/05/10/foo
私は(to_paramを使用して)行う方法を知っているようなことはしたくありません:
example.com/entries/2012/05/10/foo
私はまだヘルパーを使いたい
new_entry_path(@entry) # -> example.com/new
entry_path(@entry) # -> example.com/2012/05/10/foo
edit_entry_path(@entry) # -> example.com/2012/05/10/foo/edit
destroy_entry_path(@entry)
form_for(@entry)
link_to(@entry.title, @entry)
等々。次に、コメントを付けて、独自のリソースとしてもアクセスできるようにしたいと思います。
example.com/2012/05/10/foo/comments/5
これらの URL は、通常のヘルパーでも取得できるはずです。
edit_entry_comment_path(@entry, @comment) # -> example.com/2012/05/10/foo/comments/5/edit
またはそのようなもの。
では、コントローラー名なしで URL を取得し、引き続き url ヘルパー メソッドを使用することは可能ですか? to_param を上書きするだけでは、常に URL のコントローラー名の後の部分だけが変更されます。いくつかのサンプルコードを入手することは本当に役に立ちます。