ここでは、Michael Hartlの有名なRuby on Railsチュートリアル(Rails 3.2)に従っています。 「11.2.5 Ajaxを使用した作業フォローボタン」のセクションは、ローカルマシンでは動作しますが、Herokuでは動作しません。 [フォロー]ボタンまたは[アンフォロー]ボタンをクリックしたときに、ページ上の何も更新されませんでした。私は実際にログから呼び出されたアクションを見ることができますが。AJAXを使用しているボタンがHerokuで機能しない
2012-02-22T04:05:17+00:00 app[web.1]: Started POST "/relationships" for 67.188.133.121 at 2012-02-22 04:05:17 +0000
2012-02-22T04:05:17+00:00 app[web.1]: Processing by RelationshipsController#create as JS
2012-02-22T04:05:17+00:00 app[web.1]: Parameters: {"utf8"=>"✓", "authenticity_token"=>"nsYrHM0aLlEGoI19Zv8hImEmbfWPZ+gSy5xmgAV+V60=", "relationship"=>{"followed_id"=>"15"}, "commit"=>"Follow"}
2012-02-22T04:05:17+00:00 app[web.1]: Redirected to https://etl-rails32-tut-sample-app.herokuapp.com/users/15
2012-02-22T04:05:17+00:00 app[web.1]: cache: [POST /relationships] invalidate, pass
2012-02-22T04:05:17+00:00 app[web.1]: Completed 302 Found in 66ms (ActiveRecord: 61.2ms)
2012-02-22T04:05:17+00:00 heroku[router]: POST etl-rails32-tut-sample-app.herokuapp.com/relationships dyno=web.1 queue=0 wait=0ms service=75ms status=302 bytes=123
は、その後、私は手動でページ全体をリフレッシュするために、ブラウザ(FireFoxの7.0)の更新ボタンをクリックしなければならなかった、とボタンが正しく結果に切り替えることでしょう。
ファイル、アプリ/ビュー/レイアウト/ application.html.erbは、以下の通りである:
<!DOCTYPE html>
<html>
<head>
<title><%= full_title(yield(:title)) %></title>
<%= render 'layouts/stylesheets' %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
</head>
<body>
<div class="container">
<%= render 'layouts/header' %>
<section class="round">
<% flash.each do |key, value| %>
<%= content_tag(:div, value, class: "flash #{key}") %>
<% end %>
<%= yield %>
</section>
<%= render 'layouts/footer' %>
<%= debug(params) if Rails.env.development? %>
</div>
</body>
</html>