0
我在我的应用程序控制器中有一个方法。从ajax调用的应用程序控制器方法
def session_selected(id)
session[:selected] = [] if session[:selected].blank?
if session[:selected].include?(id)
session[:selected].delete(id)
else
session[:selected] << id
end
end
我从我的.js对它的调用文件
function check_set(id){
$.ajax({url: 'session_selected',
data: {id: id},
method: 'get'});
window.location.reload();
}
的方法似乎从来没有看到ID从PARAMS进来......
Started GET "/session_selected?id=5" for 127.0.0.1 at 2014-08-27 10:36:45 -0700
Processing by ApplicationController#session_selected as */*
Parameters: {"id"=>"5"}
Completed 500 Internal Server Error in 1ms
ArgumentError - wrong number of arguments (0 for 1):
而且,有没有这方面的好资源?
首先'数据:id'应所著的'数据:{ID:ID}' – IS04 2014-08-27 17:04:28
你有这个路线方法。如果是这样,它不应该接受任何参数(而应该使用'params')。如果没有,你期望通过Ajax调用它吗? – 2014-08-27 17:06:05
你不能直接调用helper方法。你将需要打电话给控制器的一个动作,它可以进一步调用助手方法 – RAJ 2014-08-27 17:06:12