gpt4 book ai didi

mysql - Rails 3 - 从 3 个表中选择数据

转载 作者:行者123 更新时间:2023-11-29 14:34:44 26 4
gpt4 key购买 nike

我有这 3 个型号:

class Car < ActiveRecord::Base
belongs_to :user
has_many :car_styles
has_many :styles, :through => :car_styles
end


class CarStyle < ActiveRecord::Base
belongs_to :car
belongs_to :style
end


class UserStyle < ActiveRecord::Base
belongs_to :style
belongs_to :user
end


class User < ActiveRecord::Base
has_many :cars

has_many :car_styles
has_many :styles, :through => :car_styles

结束

我已登录一个用户 (current_user)。我正在尝试选择所有汽车,其中 car style_iduser style_id 相同 - 我该怎么做?

感谢您提前提供帮助

编辑:架构:

汽车

-id
-user_id

汽车样式

-car_id
-style_id

用户风格

-user_id
-style_id

每个用户都保存了最喜欢的样式 - 无论多少(但大约±5)。每张照片都添加了样式 - 而且添加多少并不重要。

我想从表 Cars 中选择所有汽车,这些汽车具有与 current_user 添加的样式相同的样式。

最佳答案

我认为你在这里所说的是你有三个主要模型:

汽车、用户和风格

CarStyle 和 UserStyle 是连接吗?

如果是这样,您应该可以说:

Car.joins(:styles => [:users]).where(:users => {:id => current_user.id })

如果没有,您可以用您的架构更新问题吗?

关于mysql - Rails 3 - 从 3 个表中选择数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9313895/

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