2011-07-03 3 views
0

自分のサイトのランダムなユーザーに移動するボタンが必要です。私はfriendly_idの宝石を使用しているので、URLは例えば/users/deanであり、私もそのように設定しました/dean私のRails 3 Webアプリケーションに「ランダムユーザー」ボタンを作成する

私は私のroutes.rbファイルに次のようなものを追加します推測している:ユーザーのコントローラで

match '/users/random' => 'users#index'

そして、いくつかの余分なコード?

どうすればいいですか?

多くのありがとうございます。

+0

を作成するには、ランダムなユーザープロファイルを_show_したい、またはランダムなものにリダイレクトしますか? – Dogbert

+0

私はランダムなユーザにリダイレクトしたい –

答えて

1

私はこれを行うだろう:

は、Userモデルのクラスメソッドrandomを定義します(またはそれ以降の他のモデルのためにそれを再利用したいと思います場合は、あなたのモデルに含まれていますモジュールで)。

class User 
    def self.random 
    offset = rand(count) 
    first(:offset => offset) 
    end 
end 

Other ways of getting a random record, if performance becomes an issue

この

def random 
    redirect_to User.random 
end 

のようなあなたがUserControllerでrandomアクションを追加し、最後にルート

match '/users/random' => 'users#random' 
+0

それは素晴らしいです、ありがとう! –

+0

簡単な質問ですが、どのようにすればいいのですか? 'image_url'の内容を持つユーザーだけを表示するにはどうしたらいいですか? –

0

ユーザコントローラに特定のアクションrandomがあり、ユーザを選択するためのロジックをローカライズします。その操作からそのユーザーへのルートへのリダイレクトを返します。私は別のアクションを処理する余分なロジックを持つインデックスアクションを複雑にする以上にこれを好むでしょう。

+0

私はルートでそれを見ると、 'match '/ users/random' => 'users#random''のようなものでしょうか? ユーザコントローラにどのようなコードを入力する必要がありますか?私はRailsに初めて慣れており、他人を助けるでしょう:) –

関連する問題