【发布时间】:2014-07-15 13:46:05
【问题描述】:
我的 rails users_controller 正在其 update_tool 路径接收 ajax 数据。
我的意图是通过工具的价格减少用户 dollars,并将该工具的 id 添加到用户的 tool_id(它引用工具表)。
我在参数中收到:user_id 和:toolId。
这是我的控制器:
def update_tool
redirect_to :index
@user = User.find(params[:user_id])
@tool = Tool.find(params[:toolId])
price = @tool.price
# subtract tool price from users dollars
@user.dollars = @user.dollars - price
# re-assign users tool_id reference ID
@user.tool_id = @tool.id
#store to database
@user.save
end
但是,当我触发此路径时,似乎什么都没有发生,并且我在浏览器控制台中收到以下错误:
浏览器错误:
PATCH http://localhost:3000/update_dollars 500 (Internal Server Error) jquery.js?body=1:5
我的服务器日志显示:
日志:
ActionView::MissingTemplate (Missing template users/update_dollars, application/update_dollars....(etc)
我的控制器是否试图找到要呈现的视图?如果有,为什么?
我怎样才能让控制器更新数据库而不采取任何进一步的行动?
【问题讨论】:
标签: jquery ruby-on-rails templates routing controllers