Saturday, September 17, 2011

Re: [Rails] tables association and accessing them in views - newbie question

Try :include => :user when you request the photos, and that will grab the user in the same request as the photo.

Walter

On Sep 17, 2011, at 8:49 PM, maskiran wrote:

> Hi
> I am new to rails and have a very simple scenario like mentioned here
>
> table: photos
> id:int
> user_id:int
>
> table: users
> id:int
> email:string
>
> In the photos model i said it belongs_to :user
>
> When I access the photos.all, I can get the user email by
> photos.first.user.email
>
> If I want to display 100 photos on a page, the email is accessed as
> above it goes to the database at that time to get the value
>
> 1) Am I violating MVC here as the database query is being sent (though
> not by me directly) in the view?
> 2) Since the query goes 100 times in the view, should there be a
> better way to get all the data at once in the controller/model and
> pass all that to the view.
>
> I am coming from PHP world where I used to write queries and there I
> used to do a join on photos table and got all the data at once. Is
> this join costlier than getting data in each query as above
>
> Thanks
> Kiran
>
> --
> You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
> To post to this group, send email to rubyonrails-talk@googlegroups.com.
> To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
>

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home


Real Estate