with the project_id you get already all the corresponding bookings , right ?
@bookings = Booking.find_all_by_project_id(params[:id])
=> [#<Booking id: 1, week_id: 47, project_id: 2, hour: 4>, #<Booking id: 2,
week_id: 48, project_id: 2, hour: 7>]
and you want the data associated with the week and the project ? right
why don't you join the tables data uisng .join ?
Le mardi 13 novembre 2012 14:34:08 UTC+1, Werner a écrit :
>
> Hi all.
> I have models:
>
> has_many :bookings
> has_many :projects, :through => :bookings
>
> has_many :bookings
> has_many :weeks, :through => :bookings
>
> belongs_to :project
> belongs_to :week
>
> Now I want to get all coresponding entries from the bookings and weeks
> table filtered by a query.
>
> @bookings = Booking.find_all_by_project_id(params[:id])
> => [#<Booking id: 1, week_id: 47, project_id: 2, hour: 4>, #<Booking id:
> 2, week_id: 48, project_id: 2, hour: 7>]
>
> I have tried soething like that:
> Week.includes(:bookings).where('bookings.week_id = ?', @bookings).all
> #mysql error
>
> How to get that working? Thanks for help.
>
>
>
>
>
>
>
>
>
--
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 [email protected].
To unsubscribe from this group, send email to
[email protected].
To view this discussion on the web visit
https://groups.google.com/d/msg/rubyonrails-talk/-/WOVjhWDahfYJ.
For more options, visit https://groups.google.com/groups/opt_out.