Hi Im a newbie so please bear with me.
I've two controllers admin and public.
The admin controller inherits from the public controller.
I have two problems
The controller returns method admin_admin_hierarchies_path not found. If I remove the redirect_to {[:admin, hierarchies]} and make it {hierarchies} I can get it to work, but the return from the ajax call tries to access the new method of the public hierarchies controller, and since there isn't a method for that in the new controller it fails.
undefined method `admin_admin_hierarchies_url' for #<Admin::HierarchiesController:0x47f90f0>
app/controllers/admin/hierarchies_controller.rb:13:in `new' app/controllers/admin/hierarchies_controller.rb:12:in `new'
routes.rb
ActionController::Routing::Routes.draw do |map| map.resources :hierarchies
map.root :controller => 'sessions' map.resources :sessions map.resource :session, :controller => 'sessions' map.login '/login', :controller => 'sessions', :action => 'new' map.logout '/logout', :controller => 'sessions', :action => 'destroy' map.namespace(:admin) do |admin| admin.resources :hierarchies end
map.connect ':controller/:action/:id.:format' map.connect ':controller/:action/:id' map.connect ':controller/:action/:sort/:order' end
class Admin::HierarchiesController < HierarchiesController
layout 'admin' skip_before_filter :login_required before_filter :admin_required, :except => [:filterhierarchies]
# GET /admin_hierarchies/new # GET /admin_hierarchies/new.xml def new @hierarchy = Admin::Hierarchy.new @hierarchy_company = Company.find(:all, :order => "id") respond_to do |format| format.html { redirect_to([:admin,@hierarchy]) } format.xml { render :xml => @hierarchy } end end def filterhierarchies respond_to do |want| @co_business_streams = BusinessStream.search(params[:company_id]) want.js{ render :update do |page| page.replace_html 'hierarchy_business_stream_id', :partial => 'filterhierarchies' end } end end