Javascript 获取当前用户的总和,可通过js.erb部分
我有一个model Expense.rb,其中一个用户有许多。可以通过ajax表单添加新费用,因此我有相应的文件设置create.js.erb、destroy.js.erb。。等 当前,当通过远程表单提交新费用时,create.js.erb中的金额总和也会更新,在我的费用模型中如下所示:Javascript 获取当前用户的总和,可通过js.erb部分,javascript,ruby-on-rails,ruby,Javascript,Ruby On Rails,Ruby,我有一个model Expense.rb,其中一个用户有许多。可以通过ajax表单添加新费用,因此我有相应的文件设置create.js.erb、destroy.js.erb。。等 当前,当通过远程表单提交新费用时,create.js.erb中的金额总和也会更新,在我的费用模型中如下所示: def total_value Expense.sum(:amount) end create.js.erb: $'total'.html'$ 问题是这将数据库中的所有费用相加,而我只需要为当前用户查
def total_value
Expense.sum(:amount)
end
create.js.erb:
$'total'.html'$
问题是这将数据库中的所有费用相加,而我只需要为当前用户查找我知道无法从模型中访问的内容
在我的控制器内,在索引操作上,我是这样做的:
@expenses = current_user.expenses
@total_value = @expenses.sum(:amount)
这意味着我可以在我的索引视图中为当前用户获取它,只需执行以下操作:
但对于创建操作:
def create
@expense = Expense.new(secure_params)
@expense.user = User.find(current_user.id)
@expense.save
respond_to do |format|
format.html { redirect_to index_expense_path }
format.js
end
end
我不知道如何在模型中将当前用户传递给total值,以便在create js.erb中使用total值对当前用户id求和
问题是,这将数据库中的所有费用相加,而我需要
仅查找我知道无法从中访问的当前用户
模型
也许您可以使用作用域并将用户id传递给它:
问题是,这将数据库中的所有费用相加,而我需要
仅查找我知道无法从中访问的当前用户
模型
也许您可以使用作用域并将用户id传递给它:
费用。总和:金额取出所有费用记录 改变
def total_value
Expense.sum(:amount)
end
致:
会叫自己,就这样做
current_user.expenses.total_value
如果你做了开支,它应该会起作用。总值仍然会起作用。开支。总和:金额将删除所有开支记录 改变
def total_value
Expense.sum(:amount)
end
致:
会叫自己,就这样做
current_user.expenses.total_value
应该有效,如果您进行了开支。total_value仍将有效。您的用户模型中不需要total_expenses方法吗:
Class User
has_many :expenses
def total_expenses
expenses.sum(:amount)
end
end
那你就可以打电话了
current_user.total_expenses
您的用户模型中是否不需要total_expenses方法:
Class User
has_many :expenses
def total_expenses
expenses.sum(:amount)
end
end
那你就可以打电话了
current_user.total_expenses
参考@RajeshCO我正在尝试确定正确的MVC方法,我以前看到过该链接,不确定其中的任何答案是否是正确的方法。参考@RajeshCO我正在尝试确定正确的MVC方法,我以前看到过该链接,不确定里面的答案是否正确。谢谢你的回答。最终不需要使用scope。谢谢您的回答。最终不需要使用范围。