rails中的Ajax总是返回错误回调

时间:2015-04-19 05:19:30

标签: ruby-on-rails ruby ajax coffeescript

我发布了同样的问题 how to use local or instance variable inruby codein coffeescript in haml templ

获得有用的评论,我正在尝试将param传递给ajax中的控制器,但它总是返回错误回调我无法找到原因。

这是我的代码。

.html.haml

:coffee
$('input#field').change ->
    $.ajax
        url: '/posts/gaga'
        type: "GET"
        dataType: "json"
        data: { code: $('input#field').val() }
        error: (jqXHR, textStatus, errorThrown) ->
            alert "error"
        success: (data, textStatus, jqXHR) ->
            alert "success"

的routes.rb

get 'posts/gaga'

posts_controller.rb

def gaga
    @model = Model.new
    render nothing: true
end

有谁知道我的代码有什么问题?

提前致谢。

1 个答案:

答案 0 :(得分:1)

我认为您的路线不正确。它的格式应至少为:

get "posts/gaga", to: "posts#gaga"

但是,如果您的路线中已经有resources :posts,那么这可能更符合您的要求。

resource :posts do
  collection do
    get :gaga
  end
end

因为如果您打算添加更多自定义操作,则可以避免重复get "posts/..."