在rails中如何在没有?的情况下发送AJAX请求?在数据?

时间:2013-03-12 05:52:05

标签: jquery ruby-on-rails ajax ruby-on-rails-3

我正在尝试向我的GET控制器发送/routes/请求,以便我可以收到一些数据,现在我已经

function fetchMarker(id) {
    var data;
    $.ajax({
        type: "GET",
        url: '/routes/',
        data: id,
        dataType: "JSON",
        success: function(data) {
            console.log(data)
        }
    });
}

但问题是,当我这样做时,Firebug告诉我:

"NetworkError: 404 Not Found - http://10.0.0.24:3000/routes/?15"

我相信这是由?引起的,我最近改用Ruby on Rails所以我不知道这是否正常但是rake路由告诉我它必须是/ routes /(params [:id]所以我假设只是身份证号码。

我的控制器:

def show
    @route = Route.find(params[:id])
    respond_to do |format|
        format.html
        format.json { render json: @route }
    end

end

感谢您的期待!

1 个答案:

答案 0 :(得分:12)

只需将id附加到url,而不是将其作为data发送:

function fetchMarker(id) {
  var data;
  $.ajax({
    type: "GET",
    url: '/routes/' + id,
    dataType: "JSON",
    success: function(data) {
      console.log(data)
    }
  });
}