Last_visited と Last_modified の 2 つのタイムスタンプを記録する Feed というモデルがあります。
last_modified > last_visited のフィードのリストをレンダリングしたい
私は現在、モデルにこのスコープを持っています:
scope :hottest, lambda {where("'last_modified' > ?", 'last_visited')}
コントローラ
def home
@user = current_user
@feeds = @user.feeds
end
そして、ビュー内のリンクを次のようにレンダリングしています。
%ol
- @feeds.hottest.each do |feed|
%li
= render :partial => 'feeds/feed_link'
これが私のサーバーログのレンダリングです(私はPostgresを使用しています):
Feed Load (0.4ms) SELECT "feeds".* FROM "feeds" WHERE "feeds"."user_id" = 1 AND ('last_modified' > 'last_visited')
データベースに last_modified > last_visited のエントリが 1 つありますが、期待どおりにビューにレンダリングされません。
Foofeed
Last Modified 2013-06-15 01:08:27 UTC
Last Visited 2013-06-15 01:05:32 UTC
なぜこれがうまくいかないのか、私は少し困惑しています。
洞察や代替アプローチは大歓迎です。