1
我的用户have_many与他们相关的投资(模型)。我需要做的是每月计算他们所有的:(投资模型中的一列)的总和(我将在下面讨论)。Rails:根据不同的字段类型计算多个结果的总和
在我控制器,我有:
#get Investment types that are Roth IRAs, Traditional IRAs, etc.
@getira = Investment.where(user_id: current_user, investmenttype: ["Roth IRA","Traditional IRA","Other"])
通常我只想补充的.sum(:捐款)到该查询。但是,并非所有的贡献都是平等的。
的投资也有:contributionfrequency场,这是在用户选择“月刊”的字符串,“季度”或“每年”
所以我在同一控制器添加下面这一点:
investment = @getira.find(params[:contributionfrequency])
# evaluate IRA contribution frequency
if investment.contributionfrequency == "Quarterly"
@contribution_quarterly = (investment.contribution.to_i * 4)/12
elsif investment.contributionfrequency == "Monthly"
@contribution_monthly = investment.contribution.to_i
elsif investment.contributionfrequency == "Annually"
@contribution_annually = investment.contribution.to_i * 12
end
当我这样做,我得到这个错误:
没有ID找不到投资
我不确定是否进行了正确的查询,或者如果我没有在这里传递正确的字段。
我怎么通过的关键在于:contributionfrequency params中? – beaconhill
让我们来聊聊聊聊http://chat.stackoverflow.com/rooms/48530/ror –