Je travaille sur la section admin d'une nouvelle application rails et j'essaie de configurer certaines routes pour faire les choses correctement. Je le contrôleur suivant:RoR: routes d'espace de noms imbriquées, erreur de méthode non définie
class Admin::BlogsController < ApplicationController
def index
@blogs = Blog.find(:all)
end
def show
@blog = Blog.find(params[:id])
end
...
end
dans routes.rb:
map.namespace :admin do |admin|
admin.resources :blogs
end
dans les vues/admin/blogs/index.html.erb:
<% for blog in @blogs %>
<%= link_to 'Delete', admin_blog(blog), :method => :delete
<% end %>
j'ai vérifié que la routes existent:
admin_blogs GET /admin/blogs {:action => "index", :controller=>"admin/blogs"}
admin_blog GET /admin/blogs/:id {:action => "show", :controller => "admin/blogs"}
....
mais quand je essayez de voir http://localhost:3000/admin/blogs je reçois cette erreur:
undefined method 'admin_blog' for #<ActionView::Base:0xb7213da8>
où je vais mal et pourquoi?
ou _url!/10char –