以前の記事で、http://www.whoocus.com/blog/?p=622階層をつけた場合に、別のことでハマったので覚書。
デフォルトの記述で、下記のようにフォームを指定すると、テンプレートエラーとなってしまう。
<%= form_for(@member) do |f| %> <% end %>
ActionView::Template::Error (undefined method `members_path' for #<#<Class:0x00000103e5c7f8>:0x00000103e2de08>): 1: <%= form_for(@member) do |f| %> 2: 3: <% end %>
modelの階層も変わった為に当然 members_path が返されて、未知のメソッドだと怒られる。
そこで、form_forのヘルパー関数では、urlを指定できるようだ。
<%= form_for(@member, :url => admin_members_path) do |f| %> <% end %>
すると動作する。