我有模型,如下面預先加載嵌套對象軌道
Customer.rb
has_many :appointments
has_many :addresses
has_many :contacts
Address.rb
belongs_to :customer
Contact.rb
belongs_to :customer
Appointment.rb
belongs_to :customer
我定義的API來回報客戶喜歡以下,但有一個額外的屬性,即appointment_id。
customers: [
{
appointment_id: 'xxxxxxx'
..
..
..
addresses: [{...}, {...}]
contacts: [{...},{...}]
},
{
..
},
.....
]
上述API在我通過@customers(這是客戶的陣列以及它們的嵌套的對象地址,聯繫人)的方式來定義。問題是應該如何編寫活動記錄查詢來返回如此的數據。
當前的方法:
//我約會的ID名單,我應該返回如上面的API相應的客戶數據。
cust_ids = Appointment.where(blah blah blah).pluck(:customer_id)
@customers = Customer.where(appointment_id: cust_ids).includes(:addresses, :contacts)
我想要什麼?
我上面的方法沒有@customers對象中的appointment_id。我應該如何得到它?我是否需要加入表 以及include。 ??
那麼你將如何處理你的JSON中的多個'appointment_id'。由於客戶可能有多個預約ID,但我無法看到此行爲的有效JSON –
@NimishGupta最初我正在提取一組預約ID,然後我正在提取相應的客戶。因此,在這些客戶數據中,我也想要這個預約ID – krishnar
如果客戶有2個約會會發生什麼? 這種情況下JSON會是什麼? 請讓我知道這個問題的答案,以便我可以嘗試幫助你 –