簡體   English   中英

Rails使用三個參數連接兩個表

[英]rails joining two tables using three params

首先,我正在使用Psql,如果有幫助,可能沒關系。

我有兩個表,(它們之間有模型has_many)

# models
RegUser(id, Email, Name)
Booking(id , Event_id, Reg_user_id)

我如何將這兩個鏈接在一起,以便在查看事件40時,將顯示該事件的注冊用戶,它基本上是通過傳遞的參數將兩個兩個表連接在一起(我相信!!!)

這是我過去使用的代碼

@reg_usr = RegUser.where(event_id: params[:id])

我們將event_id移到另一個表,並將其從reguser表中刪除。

您應該具有以下關系:

class Event < ActiveRecord::Base
  has_many :bookings
  has_many :reg_users, through: :bookings

class RegUser < ActiveRecord::Base
  has_many :bookings
  has_many :events, through: :bookings

class Booking < ActiveRecord::Base
  belongs_to :event
  belongs_to :reg_user

然后,您可以簡單地執行以下操作:

@event = Event.find(params[:id])
@reg_users = @event.reg_users # returns the reg_users associated to the Event

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM