积极记录根据父母的条件获得孩子

时间:2013-01-18 16:21:52

标签: ruby-on-rails ruby ruby-on-rails-3 rails-activerecord

我有一个数据库设置:

User has_many :cars
Car  has_many :timeslips
Timeslip  has_one :car

当父母:汽车有一个:user_id

时,我只需要返回:timeslips

在我的控制器中,我想说这样的话:

@timeslips = Timeslip.car.where(:user_id => params[:user_id])

当满足父母条件时,返回所有孩子的最佳做法/方法是什么?我应该在模型中做一个方法吗?

1 个答案:

答案 0 :(得分:1)

我会使用ActiveRecord加入:http://guides.rubyonrails.org/active_record_querying.html#joining-tables

@timeslips = Timeslip.joins("INNER JOIN cars on timeslips.car_id = cars.id").where("cars.user_id = ?", params[:user_id])