Rails использует настроенные маршруты, чтобы указать на соответствующее действие контроллера. Вы должны указать маршрут в файле config / rout.rb, чтобы отправить запрос через желаемое действие. В вашем контроллере вы определили method_to_handle_request. Вы должны убедиться, что вы определили маршрут для этого. Есть много способов сделать это в файле rout.rb, и они хорошо описаны в этом руководстве .
Затем в вашем method_to_handle_request вы должны визуализировать / отформатировать ваш вывод в формате JSON или XML или как хотите, чтобы ваше представление использовалось. Если вы этого не сделаете, вы в конечном итоге просто вернете плоский шаблон HTML. Вот хороший ресурс для рендеринга представлений, в котором, в частности, есть раздел, посвященный JSON.
Итак, вот небольшой пример того, что я имею в виду:
в config / rout.rb
resources :foos do
member do
post 'do_my_foo'
end
end
в foos_controller.rb
def do_my_foo
foo = Foo.find(params[:id])
# do some things to poor ole foo
some_cool_data_about_foo = ...
respond_to do |format|
format.json { render :json => some_cool_data_about_foo }
end
end
Затем, когда вы вызываете его с помощью ajax, вы получаете данные JSONified в свой обработчик.
Боже, надеюсь, это то, о чем ты спрашивал ...