这个问题看起来很简单,但我从来没有遇到过这样的问题。
以下是设置:
Post has_many :reader_links
Post has_many :readers, :through => :reader_links
我需要了解是否有读者阅读帖子。
@post.reader_links.where('created_at >= ?', 45.minutes.ago).any?
效果很好。
@post.readers.where('created_at >= ?', 45.minutes.ago),any?
抛出一个模棱两可的表列错误,因为混淆了该created_at
列是指reader对象还是reader_link对象。发生这种情况是因为阅读器的类实际上是用户。如何查询45 分钟前由 reader_links 创建的读者?
我正在寻找类似的东西..
@post.readers.where('reader_link.created_at >= ?', 45.minutes.ago)