Hi.
I have some apps that i have “admin” areas to the clients manager the app.
This “admin” is a directory on my controllers path, like this:
my_site
→ app
–>–>controllers
–>–>–>admin
And my controllers in “admin”, i use the correct namespace(example for clients_controller):
class Admin::ClientsController < AdminController
Only doing it and dont use routes, it run OK if i access by the url:
http://localhost:3000/admin/clients
But local and on my server(passenger) it is ok, and function normal, but on JRUBY i get an error because it is thinking that “admin” is a controller and “clients” is a action of “admin”.
My controllers is not restfull, so what i have to do, to correct it? Or what the best method to make the “admin”? I have to put any route?
But local and on my server(passenger) it is ok, and function normal, but on
JRUBY i get an error because it is thinking that "admin" is a controller and
"clients" is a action of "admin".
My controllers is not restfull, so what i have to do, to correct it? Or what
the best method to make the "admin"? I have to put any route?
I have an admin section in jruby application. Try to set the routes
explicit with an admin namespace.
map.with_options(:namespace => "admin") do |admin|
admin.resources :clients
# or in non restful-pattern
admin.clients_index 'clients', :controller => 'admin/clients',
:action => 'index'
end
Hi.
Your solution dont solve.
But i try it:
map.with_options(:namespace => “admin”) do |admin|
admin.clients_index ‘admin/clients’, :controller => ‘clients’ #im on admin so dont need redirect to “admin/clients” only “clients”
end
And to the index(home) action, it is OK, but for the others actions, NO (insert/delete/edit).
This solution is near, but have to put all action do controller “clients”.
Any ideia?
Hi.
Your solution dont solve.
But i try it:
map.with_options(:namespace => "admin") do |admin|
admin.clients_index 'admin/clients', :controller => 'clients' #im on
admin so dont need redirect to "admin/clients" only "clients"
end
And to the index(home) action, it is OK, but for the others actions, NO
(insert/delete/edit).
This solution is near, but have to put all action do controller "clients".
Any ideia?
Oh my mistake ...
map.with_options(:namespace => "admin") do |admin|
admin.clients_index 'clients', :controller => 'clients', :action => 'index'
admin.clients_edit 'clients/:id/edit', :controller => 'clients',
:action => 'edit'
admin.clients_insert 'clients/insert', :controller => 'clients',
:action => 'insert', :conditions => { :method => :post }
end
Hint: Your actions looks to match the resource-pattern
Hi.
But my system is an ERP, i have more than 20 controllers.
I have to make it for all controllers and actions?
My actions is in portuguese, not “edit” but “alterar”… i put here an example of my structure.
Dont have other method? A route that redirect all with “admin/” to “admin/:controller/:action/:id” ???
But my system is an ERP, i have more than 20 controllers.
I have to make it for all controllers and actions?
I have an application with something like 20 controllers and make all
routes explicit for each controller.
My actions is in portuguese, not "edit" but "alterar"... i put here an
example of my structure.
Dont have other method? A route that redirect all with "admin/" to
"admin/:controller/:action/:id" ???
You could probably do
map.with_options(:namespace => "admin") do |admin|
admin.connect ':controller/:action/:id'
end
Hum. Ok.
The last solution doesn’t work, so i think that i’ll have to make a route to each controller
Do you make one route by controller? Can you post an example about how i can redirect all from “admin/clients” to correct controller/action/id ?
I make a solution that work fine to me, but i have to create one for each controller:
clients
map.admin_clients ‘/admin/clients/:action/:id’, :controller => ‘/admin/clients’
…
This works fine for me in jruby:
map.namespace(:admin) do |admin|
admin.resources :clients
admin.resources :options, :has_many => :widgets
end
Does this not work?
Make sure its above the default routes...
Hi.
Im already try it, but no sucess.
My controllers is not restfull.