How to create an index page with data from other contollers

Hi all,

First I'm new to RoR so if I'm asking a question thats simple sorry but I can't find the answer on google.

I have a number of controllers that are working fine and I've got the foreign keys etc working.

What I'm looking to do now is have an index page that will have information displayed from lets say 3 of these controllers on the page with links to other pages.

Can I ask someone to point me in the right direction, do I have to create a new controller for this (surely not as this goes against DRY)

Thanks,

Graham

Hiya Graham,

It depends on your setup really but I would say in this case you would want another controller.

If you've put all the shared html into partials then on the new index page you would just need to do a few <%= render :partial => 'PARTIAL_NAME'%> to pull in the html you need.

http://api.rubyonrails.org/classes/ActionView/Partials.html

Cheers Luke

Luke Pearce wrote:

Hiya Graham,

It depends on your setup really but I would say in this case you would want another controller.

If you've put all the shared html into partials then on the new index page you would just need to do a few <%= render :partial => 'PARTIAL_NAME'%> to pull in the html you need.

http://api.rubyonrails.org/classes/ActionView/Partials.html

Layouts and Rendering in Rails — Ruby on Rails Guides

Cheers Luke

Thanks for the advice Luke I'll use a new controller for the index page as some of the other pages don't have partials. Can I ask how I can link the contollers should I include attributes from the other controllers index defs etc, such as

myindexcontroller

     def index

            @Businesss = Business.all #from the business controller

            <html to show business list>

          end end

cheers,

Graham

Business.all is not from the business controller, it is the Business model. You can call this from any controller.

Colin