Con
(Con)
1
Hi,
I have one controller in the /app/controllers/animals_controller.rb
directory, and another in
/app/controllers/production/services_controller.rb. The thing is that
one Animal has many Services, and i’d like to access to them using
something like:
http://localhost:3000/animals/1/production/services/1
or at least with:
http://localhost:3000/animals/1/services/1
I tried the last one adding in routes.rb:
map.resources :animals, :has_many => :services
but it throws me an error: uninitialized constant ServicesController
any idea?
Thanks.
Your ServicesController is in a non-standard location. Thus, what’s the
reasoning for having ServicesController within the production directory?
In any case, you should be able to do the following:
config.load_paths += %W( #{RAILS_ROOT}/app/controllers/production )
The above adds the production directory to your load path.
Good luck,
-Conrad
Con
(Con)
2
Hi,
I have one controller in the /app/controllers/animals_controller.rb
directory, and another in
/app/controllers/production/services_controller.rb. The thing is that
one Animal has many Services, and i’d like to access to them using
something like:
http://localhost:3000/animals/1/production/services/1
or at least with:
http://localhost:3000/animals/1/services/1
I tried the last one adding in routes.rb:
map.resources :animals, :has_many => :services
but it throws me an error: uninitialized constant ServicesController
any idea?
Thanks.
Your ServicesController is in a non-standard location. Thus, what’s the
reasoning for having ServicesController within the production directory?
In any case, you should be able to do the following:
config.load_paths += %W( #{RAILS_ROOT}/app/controllers/production )
BTW, the above line goes into your environment.rb file within the Rails::Initializer
block.
-Conrad
Mike27
(Mike)
3
'production/services' should work as the controller name. The
"non-standard location" should not be an issue. In my app i dont need
that init line.