質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

2回答

5567閲覧

【ruby on rails】ランキング機能を実装したい。

genkishimoda129

総合スコア15

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

4クリップ

投稿2014/10/04 07:38

プログラミング初心者です。
Ruby on Rails4を使って開発を進めています。

WEBサイトによくある、「今週のアクセスランキング」や「ピックアップ記事」のようなものを実装したいのですが、どのようなコードを書いたら良いのでしょうか?

いろいろと検索をかけてみても出てこなかったので、
質問させて頂きました。

よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

思いつきですが、インメモリKVSデータベース Redis をつかって作ってみるのも おもしろいかもしれません


アクセスランキング集計のための"日付テーブル"を用意して、「ページのURL : アクセスカウント」を保存していきます

hmset 20141006 teratail.com/questions/2708 14 hmset 20141006 teratail.com/questions/another_question_id_A 10 hmset 20141007 teratail.com/questions/another_question_id_B 15 hmset 20141007 teratail.com/questions/another_question_id_C 113 hmset 20141008 teratail.com/questions/another_question_id_D 13

保存したデータに対して、hincrby でインクリメント操作をしていきます。

HINCRBY 20141006 teratail.com/questions/2708 1 # => 15

これらの情報を元に週間アクセス数として情報を集計したり、数日のうち(たとえば3日間)とくにアクセスの多かったものをピックアップ記事として取り上げてみたりするのもいいでしょう


redis-server, redis-cli のセットで、実際にRedis を動かしてみることが出来ます。
(もし Docker 環境をセットアップ済みであるならば、dockerfile/redis - Github からカンタンに環境をセットアップすることが可能です)

公式サイトではドキュメント ページ中で実際にコマンドを打ち込んで動かすことも出来ます

Links

投稿2014/10/05 17:01

gouf

総合スコア2321

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

genkishimoda129

2014/10/07 09:58

ありがとうございます!大変参考になりました!^^
guest

0

google で 「rails4 "ランキング機能"」 を検索した中でこんなページがありました。

... このブログにランキング機能を実装するとしたらどうするかを考えてみましょう。...

投稿2014/10/04 09:48

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

genkishimoda129

2014/10/07 09:58

ありがとうございます!大変参考になりました!^^
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問