画像ギャラリーであるモデルがあります。画像が何回閲覧されたかを追跡したい。現在、コントローラーでこれを達成しています
def show
@article = Post.find(params[:id])
@article.views += 1
@article.save
end
ただし、これはビュー全体にアクセスするときにビュー カウンターをインクリメントするだけです (この方法では、テンプレートをキャッシュすることもできません)。また、サムネイルがインデックス コレクション ビューに表示されたとき (それらも有効なインプレッションであるため)、検索、その他の「いいね」や「お気に入り」などの表示でビューを増やしたいと考えています。
つまり、画像全体または画像のサムネイルが表示されるたびに、ビュー カウンターをインクリメントしたいと考えています。レールでこれを達成するためのパターン/パラダイムはありますか?
ページが読み込まれた後、ページ上のすべての投稿IDのリストを取得し、それらすべての投稿のビューカウンターをインクリメントする別のコントローラーをajaxlyにヒットするように、これをjavascriptで行う必要がありますか?