現在構築しているメッセージングシステムに、IntrideaのActs asReadableRailsプラグインを使用しています。それに応じてメッセージクラスを定義しました。
class Post < ActiveRecord::Base
acts-as-readable
end
そして、すべてが計画どおりに機能しているように見えますが、メッセージビューに未読メッセージをアプリに表示させようとすると、問題が発生します。
彼らの例:(フォーマットの問題のため、アンダースコアをハイフンに変更しました)
bob = User.find_by_name("bob")
bob.readings # => []
Post.find_unread_by(bob) # => [<Post 1>,<Post 2>,<Post 3>...]
Post.find_read_by(bob) # => []
Post.find(1).read_by?(bob) # => false
Post.find(1).read_by!(bob) # => <Reading 1>
Post.find(1).read_by?(bob) # => true
Post.find(1).users_who_read # => [<User bob>]
Post.find_unread_by(bob) # => [<Post 2>,<Post 3>...]
Post.find_read_by(bob) # => [<Post 1>]
bob.readings # => [<Reading 1>]
したがって、メールボックス(たとえば、受信トレイ(39))にある未読メッセージの数を一覧表示したい場合は、次のようなことができるはずです。
<%= Post.find_unread_by(current-user).count %>
しかし、役に立たない。すべてが設定された後、私はいつも単純なビューの問題で立ち往生しているようです。何か案は?