5

Recipe の Rails モデルがあります。これには、表示された回数をカウントするビュー属性があります。

コントローラーの show アクションで、通常どおりモデル オブジェクトをフェッチします。

@recipe = Recipe.find(params[:id])

次に、ビュー数を増やして保存します。

@recipe.views = @recipe.views + 1
@recipe.save

これはローカルでは問題なく動作しますが、Heroku では保存が行われないようです。エラーはスローされません。

Heroku の Rails コンソールでこれとまったく同じコードを実行すると、動作します。

私がそれを機能させる唯一の方法は、設定することです

config.cache_classes = false

environment/production.rb 内

これは明らかに私が望んでいるものではありませんが、ここからどうすればよいか困惑しています。

開発と運用の両方で Postgresql 9.1 を使用して、Cedar スタックで Rails 3.2.8、Ruby 1.9.3 を実行しています。

4

2 に答える 2

6

独自の解決策を探している将来の検索者へのFWIW、Benjamin Tanの回答(コメントで)はheroku restart、私が同様の問題を抱えていたときに私にとってうまくいったものでした.

于 2015-03-25T16:06:25.410 に答える