我希望能夠從控制器返回一些數據,以便我可以使用gon gem在JavaScript中創建圖形。在Rails控制器中加入表格
我有兩個型號:
account: id[PK, int], name[string], credit[boolean], active[boolean]
balance: id[PK, int], account_id[FK, int], balance[decimal], date[date]
class Account < ActiveRecord::Base
has_many :balances
end
class Balance < ActiveRecord::Base
belongs_to :account
end
對於一個給定的日期@latestDate
,我希望能夠返回帳戶[名],帳戶[信貸]和平衡[平衡]。
目前,使用下面的代碼,我可以返回給定日期的balance
對象,但我怎樣才能返回加入的account
數據以及我還有帳戶[名稱]和帳戶[信用]。
代碼:
def statement
@dates = Balance.select("distinct(date)").order('date desc')
if (params[:date_id].blank?)
if (Balance.count > 0)
@latestDate = Balance.order('date desc').first.date
else
@latestDate = Date.current
end
else
@latestDate = params[:date_id]
end
@summaryBalances = Balance.joins(:account).order('accounts.credit').where('date = :abc', {abc: @latestDate})
gon.assets = @summaryBalances
end
自從我使用ActiveRecord以來已經有一段時間了,但我相信[includes](http://apidock.com/rails/ActiveRecord/QueryMethods/includes)就是你想要的。與'join'類似,但它在進入數據庫時抓取額外的記錄。 –
此外,我不確定'account'記錄是否與@ balanceBalances'中的'balances'一起存儲,或者您是否必須專門將它們存儲在另一個變量中。 –
@RyanK如果我將我的代碼更改爲'gon.assets = Balance.includes(:account)',我仍然只返回餘額數據。我希望能夠在相同的對象中返回帳戶數據。 – Bhav