Rails join table



Rails 5.2

我有一个加入表报价_用户

class Offer < ApplicationRecord
has_and_belongs_to_many :users
class User < ApplicationRecord
has_and_belongs_to_many :offers

如何在给定的offer.id中获取所有用户?

@offer = Offer.find(params[:id])
@users = User.joins(:offers).where(id: @offer.id)

只给我第一个值。感谢您的支持。

给定offer_id,它只是:

users = Offer.find(offer_id).users

可选地,这里的解决方案将生成一个sql查询,而不是两个:

users = User.joins(:offers).where(offers: { id: offer_id })

我建议您阅读这些指南以了解更多信息。

相关内容

  • 没有找到相关文章

最新更新