Invoking one controller's methods from other controller

I have a controller (employee) with it’s model and view. Now I need to
write another controller (emp) which would not have any model or view.
This emp controller should be able to invoke all the methods of
employee controller.And eventually be able to represent all the
relevant information.

I have also a dependent controller of ‘employee’ which is ‘account’ .
I have set up routes as per that.

in routes.rb


resources :employees do
resources :accounts
end

and, resources :emp, :as =>“employees” do
resources :acc , :as=>“accounts”
end

On 2 April 2012 11:17, Pallav_bfs [email protected] wrote:

I have a controller (employee) with it’s model and view. Now I need to
write another controller (emp) which would not have any model or view.
This emp controller should be able to invoke all the methods of
employee controller.And eventually be able to represent all the
relevant information.

Why have you posted this again rather than continuing the previous
thread that you started?
You cannot call one controllers methods from another (or at least you
should not). Either extract the common code to a library or don’t use
a separate controller. To use the existing controller add parameters
to the existing actions if required or add new methods, then if the
URL is important to you use routing to provide the URLs you require.

Colin

Quoting Pallav_bfs [email protected]:

resources :employees do
accounts

I was thinking how to write the emp controller.Please help.

You’ve said what is the same between emp and employee. So what is
different
between emp and employee? In general, you cannot call the instance
methods of
one class for another class, only class methods. Depending on what you
are
trying to do, emp can inherit from employee or there is only the
employee
controller and routes map the emp requests onto the employer controller.

HTH,
Jeffrey