2011-07-19 9 views
2

Ruby on Rails 3.0.9を使用していて、データベースクエリ結果を更新しようとしています。「保存」メソッドを呼び出した後に新しいクラスデータを再ロード

私のデータの流れは以下の通りです:

Articles::UserRelationship.where(:user_id => user.id).count # Load data 
@article.save 
Articles::UserRelationship.where(:user_id => user.id).count # Load cached data 

私はそのリフレッシュを取得できるようにキャッシュされたデータをロードしていないしたいと思い、私はArticles::UserRelationshipをロードする二度目に。

上記のコードロードは常に2番目のステートメントのデータをキャッシュするので、どうすればいいですか?

P.S .: reloadメソッドを使用しようとしましたが、継ぎ目が機能しません。

答えて

4

クエリキャッシュを無効にするにはActiveRecordの設定を調整することができます。

APIリファレンスは

Articles.uncached do 
    Articles::UserRelationship.where(:user_id => user.id).count 
end 
これを試してみる on github

です

関連する問題