# Implementing a dashboard-style controller, (think iGoogle)

**URL:** <https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501>\
**Category:** Rails\
**Created:** [March 10, 2009, 4:07pm UTC](https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501 "2009-03-10T16:07:04Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Lasertoast](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@Lasertoast](https://www.ruby-forum.com/u/Lasertoast)\
**Post date:** [March 10, 2009, 4:07pm UTC](https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501/1 "2009-03-10T16:07:04Z")

</div>

I’m a relatively new Rails developer, but I think I have a good grasp  
on the paradigm and I’m trying my best to adhere to RESTful standards.

First, let me describe the basic structure of my Rails app (only the  
pieces relevant to my problem of course):

I have a User\_Layouts controller. Each User contains multiple  
User\_Layouts. Each User\_Layout entry describes a Module that the user  
is subscribing to (and thus will be displayed on his dashboard -  
essentially a collection of User\_Layouts). Thus, the  
User\_Layouts#index should display a dashboard containing all Modules  
the User is subscribed to (very similar to iGoogle). I want to be able  
to create these Modules easily (perhaps using a tailored generate  
script) - each module having its own model, view, and controller.

My question is, what is the proper way to structure this? When  
User\_Layouts#index is invoked, how to I tell Rails to render each  
Module’s view and place it in the proper div on the User\_Layouts#index  
view? I’ve toyed with rendering partials, and render :update to  
replace the innerHTML, but none of these seem elegant enough to be  
standard practice.

Any ideas from the Rails experts out there?

Any help is greatly appreciated!

Jarad D.

---

<div class="post-metadata">

**Author:** ![Lasertoast](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@Lasertoast](https://www.ruby-forum.com/u/Lasertoast)\
**Post date:** [March 10, 2009, 4:31pm UTC](https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501/2 "2009-03-10T16:31:54Z")

</div>

On Tue, 10 Mar 2009 04:46:22 -0700 (PDT)  
Lasertoast [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> essentially a collection of User\_Layouts). Thus, the  
> standard practice.  
> I would probably just create partials for each type of module. Then you  
> can use render :partial =\> @module, which will render the correct  
> partial for the object type.

## SH

Starr H.  
My blog: [http://starrhorne.com](http://starrhorne.com)  
Check out my Helpdesk RailsKit: [http://railskits.com/helpdesk/](http://railskits.com/helpdesk/)

---

<div class="post-metadata">

**Author:** ![Lasertoast](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@Lasertoast](https://www.ruby-forum.com/u/Lasertoast)\
**Post date:** [March 10, 2009, 6:11pm UTC](https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501/3 "2009-03-10T18:11:59Z")

</div>

Thanks for the quick response!

Unfortunately, I don’t think a partial will work for my purposes. I  
have a lot of partial use throughout my app to help create DRY views -  
even across different controllers - but in this case, I need full-  
fledged MVC components dynamically rendered in a div. A partial will  
render a particular view, but I also need the controller, it’s  
actions, and a set of params sent to it.

I may have found the answer myself a few minutes ago when I stumbled  
upon a specialized render method called render\_component. This method  
is actually exactly what I was looking for, but it looks like its  
slated for deprecation in Rails 2.3. Anyone familiar with this method  
as far as advantages and disadvantages? I’m assuming there are  
problems with it since it is being removed (unless it’s going to be  
placed in a plugin that I’m unaware of).

Thanks again in advance for you help!

---

<div class="post-metadata">

**Author:** ![Lasertoast](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@Lasertoast](https://www.ruby-forum.com/u/Lasertoast)\
**Post date:** [March 10, 2009, 6:11pm UTC](https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501/4 "2009-03-10T18:11:24Z")

</div>

Thanks for the quick response!

Unfortunately, I don’t think a partial will work for my purposes. I  
have a lot of partial use throughout my app to help create DRY views -  
even across different controllers - but in this case, I need full-  
fledged MVC components dynamically rendered in a div. A partial will  
render a particular view, but I also need the controller, it’s  
actions, and a set of params sent to it.

I may have found the answer myself a few minutes ago when I stumbled  
upon a specialized render method called render\_component. This method  
is actually exactly what I was looking for, but it looks like its  
slated for deprecation in Rails 2.3. Anyone familiar with this method  
as far as advantages and disadvantages? I’m assuming there are  
problems with it since it is being removed (unless it’s going to be  
placed in a plugin that I’m unaware of).

Thanks again in advance for you help!

---

<div class="post-metadata">

**Author:** ![Lasertoast](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/l/c6cbf5/32.png) [@Lasertoast](https://www.ruby-forum.com/u/Lasertoast)\
**Post date:** [March 10, 2009, 7:03pm UTC](https://www.ruby-forum.com/t/implementing-a-dashboard-style-controller-think-igoogle/162501/5 "2009-03-10T19:03:44Z")

</div>

> Unfortunately, I don’t think a partial will work for my purposes. I  
> have a lot of partial use throughout my app to help create DRY views -  
> even across different controllers - but in this case, I need full-  
> fledged MVC components dynamically rendered in a div. A partial will  
> render a particular view, but I also need the controller, it’s  
> actions, and a set of params sent to it.

Yeah, I would avoid using components, as they’re deprecated. And you may  
already know this, but just because a partial is rendered as a result of  
a request to a specific controller, that doesn’t mean that the partial  
can’t link to other controllers or render arbitrary content.

SH

–  
Starr H.  
My blog: [http://starrhorne.com](http://starrhorne.com)  
Check out my Helpdesk RailsKit: [http://railskits.com/helpdesk/](http://railskits.com/helpdesk/)
