さっそくMixiの新着とかもfastladderに流し込む設定にして、cronに仕込んで一晩経ちました。
で、fastladderの画面を見てみると、新着のfeedが並んでます。
でも、未読の数が最大でも10件。
あれ~?そんなはずは?と思ってmysqlでデータベースを覗きます。
feedsと言うテーブルにfeedsの情報が、itemsと言うテーブルにエントリの情報が、subscriptionsと言うテーブルにmemberとfeedsの関連付けがあるようです。
で、subscriptions.has_unreadを見て未読があるかどうかを判断しているようです。
items自身には既読の情報がないので、subscriptions.viewed_onとitems.created_on(?)を比べて未読かどうかを判断しているようです。
で、画面から一度見てしまうと、viewed_onとhas_unreadが更新されてしまうため、未読は全部既読になります。
mongrelのproduction.logを見ながらReloadボタンを押してみると、apiコントローラのsubsアクションを呼んでいます。
なので、api_controller.rb を読むと、subsの中でDBから引いた未読件数(unread_count)と定数MAX_UNREAD_COUNTのうちの小さい方を件数として採用していることがわかりました。
後は、MAX_UNREAD_COUNTを定義しているところを探したら、fastladder/config/initializers/constants.rb にありました。
案の定10となっているので、適当に200とかに変えてmongrelを再起動したら、無事に10件よりも多い未読が表示されるようになりました。
# どうせなら、feed単位じゃなくてitem単位で未読管理がしたいところですが、それは大改造ですかね。
もう一つ気になったのが、fastladderの画面でEdit Feedsの画面。
Last Updateが全て 465 monthes ago になっています。
これは、feedsテーブルのmodified_onがNULLになっているためで、Store::Fastladder の問題のようです。
Fastladder.pm の sub store で、$feed->modified_onを適切に設定してあげれば良いのだと思いますが、Plaggerが良くわかっていないので $args->{feed}の何を入れれば良いのかがわかりません。(とりあえずupdated_onと同じようにしておきましたが)
いや~、ソースがあるって言うのは素晴らしいですね。

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: fastladderインストール(4)

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/1425

コメントする

このブログ記事について

このページは、falseが2008年3月19日 17:37に書いたブログ記事です。

ひとつ前のブログ記事は「fastladderインストール(3)」です。

次のブログ記事は「fastladderインストール(5)」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1