gpt4 book ai didi

ruby-on-rails - 如果一个用户 has_many cars,一辆车 has_many appointments,我怎样才能得到所有用户的约会?

转载 作者:太空宇宙 更新时间:2023-11-03 17:49:40 25 4
gpt4 key购买 nike

我正在使用 Rails 4.1 和 Ruby 2.1。

一个用户 has_many 辆车,和一辆车 has_many 约会。获取所有用户约会的最简单方法是什么?

理想情况下,我想做这样的事情:user.cars.appointments,我知道我可以做这样的事情:

user.cars.each do |car|
appointments = []
car.appointments.each do |app|
appointments >> app
end
return appointments
end

但我希望有一种更快、更“Rails”的方式来做到这一点。谢谢!

最佳答案

看看 has_many :through assocation在 ActiveRecord 中。

class User < ActiveRecord::Base
#...
has_many :cars
has_many :appointments, through: :cars

end

您可以获得用户的所有约会:

@user.appointments

这将自动构建通过 cars 表将约会链接到用户所需的 INNER JOIN SQL。

关于ruby-on-rails - 如果一个用户 has_many cars,一辆车 has_many appointments,我怎样才能得到所有用户的约会?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27073094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com