我的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)
我的控制器是否试图找到要渲染的视图?如果是这样的话?
如何让控制器更新数据库,而不采取任何进一步的措施?
答案 0 :(得分:2)
你可以这样做:
render nothing: true
在update_tool
行动中。
请查看此参考: