AJAX 呼び出しのデータ パラメーターを使用してコントローラーに変数を渡すことができません。私は何を間違っていますか?
show.html.erb
var parentStepID = 20;
$.ajax({
url: "/steps/create_branch",
type: 'GET',
data: {parent: parentStepID}
});
コントローラ
def create_branch
parentStepID = params[:parent]
logger.debug("parentStepID: #{parentStepID}")
respond_to do |format|
format.js
end
end
ロガーはparentStepIDを取得していないようです:
Started GET "/projects/20/steps/create_branch" for 127.0.0.1 at 2013-03-06 11:56:44 -0500
Processing by StepsController#create_branch as HTML
Parameters: {"project_id"=>"20"}
Project Load (0.1ms) SELECT "projects".* FROM "projects" WHERE "projects"."id" = ? LIMIT 1 [["id", "20"]]
####################################################################
parentStepID:
Rendered steps/create_branch.js.erb (0.1ms)
Completed 200 OK in 16ms (Views: 10.6ms | ActiveRecord: 0.1ms)
ブラウザ コンソール:
20 0:412
/projects/20/steps/create_branch 0:413
また、AJAX リクエストは適切に機能していると思います。ステップビューフォルダーに「create_branch.js.erb」というファイルを作成し、正常に呼び出されるアラートを配置しました。