2016-11-27 61 views
0

所以,我有三個ActiveRecord模型。 On User是2個has_many關係,一個用於:accounts,另一個用於:authorizations,這是一組事務的別名。帳戶有一個:transactions的集合。Rails包括不同級別的嵌套has_many關係

  1. 用戶
  2. 帳戶
  3. 交易

到目前爲止,我已經能夠包括用戶,其:accounts:transactions使用:

@user.to_json(:include => {:accounts => {:include => :transactions}})

I want to include the collection of transactions called :authorizations that User has as well. How can I do this?

回答

0

您可以試試:

@user.to_json(:include => [{:accounts => {:include => :transactions}}, :authorizations]) 
+0

謝謝,我試圖用,但我得到這個錯誤:「#<的ActiveRecord :: StatementInvalid:PG :: UndefinedColumn:ERROR:列transactions.user_id不存在\ n線1: SELECT \「transactions \」。* FROM \「transactions \」WHERE \「transacti ... \ n^\ n:SELECT \」transactions \「。* FROM \」transactions \「WHERE \」transactions \「。\」 user_id \「= $ 1>」 – CanadaIT

+0

如果您執行了@ user.to_json(:includes =>:authorizations),您會得到相同的錯誤消息嗎?如果是這樣,那麼這個關係就沒有正確設置。 – moveson