2014-09-06 27 views
1

我想要做的所有事情,都是以輕鬆/輕鬆的方式進行......只要PostsController#Show動作被激活,就會增加post.viewspost.view_count列。我不想做太重的事情。是否有可能使用除關聯中的對象數量之外的counter_cache來跟蹤其他內容?

感覺就像本地counter_cache將是完美的......但這是專門用於關聯對象計數。

無論如何,我可以重新目的呢?或者以我想要的方式使用底層概念?

回答

2

您不能直接使用計數器緩存,但可以使用底層遞增函數。 See the documentation。要做你說的話,你想要:

Post.increment_counter(:view_count, post.id) 

這發出一個單一的SQL update命令。

+0

所以我只是把這個放在'show'動作中,取消了成功的渲染,對嗎? – marcamillion 2014-09-06 01:17:42

+0

@marcamillion可能。沒有看到你的代碼是不可能的。 – Gene 2014-09-06 01:19:32

相關問題