Railsでajaxリクエストを作成しようとしています。私がやりたいことは、ビューページを作成せずに、JavaScript からコントローラーのアクションを呼び出すことです。例えば
class BooksContoller < ApplicationController
respond_to :html, :json, :xml
def myaction
respond_to do |format|
format.js { # do stuff }
end
end
end
routes.rb ファイルに以下を追加しました
match '/books/myaction' => 'books#myaction'
これが私が行っているajax呼び出しです
$.ajax(
{
type: "GET", url: "/books/myaction.js",
success: function(data){
console.log(data);
}
});
Railsはビューが見つからないと不平を言っています
ActionView::MissingTemplate with {:locale=>[:en], :formats=>[:js, :html], :handlers=>[:erb, :builder, :coffee, :haml]}
明らかに、対応する myaction.html.haml ファイルを作成すると、問題なく動作します。ただし、これは ajax リクエストにのみ使用されるため、このアクションのビューを作成したくありません。カスタム アクションのビューを作成せずに ajax 呼び出しを行う方法はありますか?