ユーザーの正解数をカウントして表示できるアプリを作成しようとしています。セッションでこれにアクセスして表示するにはどうすればよいですか。おそらく最初から間違っているグローバル変数としてカウントを設定しています。
私のアプリはランダムな質問をし、ユーザーが正しい答えをクリックすると、新しい質問でページをリロードします。間違っている場合は、新しいページに誘導します。正解数を表示するにはどうすればよいですか?
私のユーザーとセッションは、michael hartl による ruby on rails チュートリアルのように設定されています。
controller.rb
@@ruby_functs_count = 0
def ruby_functs
@symbols = {
"abort" => "Terminates program. If an exception is raised (i.e., $! isn't nil), its error message is displayed.",
"Array( obj)" => "Returns obj after converting it to an array using to_ary or to_a."
}
@random = []
@random2 = []
rando = @symbols.sort_by {rand}
rando = rando.each { |k,v| @random << k and @random2 << v}
@sym = @random2[0]
@answer = @random[0]
@sym2 = @random[0..10].sort_by {rand}
end
sessions_controller.rb
class SessionsController < ApplicationController
def sign_in(user)
cookies.permanent[:remember_token] = user.remember_token
self.current_user = user
end
def new
end
def create
user = User.find_by_email(params[:session][:email].downcase)
if user && user.authenticate(params[:session][:password])
sign_in user
redirect_to user
else
render 'new'
end
end
ruby_functs.html.erb
<% for @random in @sym2
if @random == @answer
x = cards_ruby_functs_path %>
<li class="btn btn-small btn-info flash"><%= link_to "#{@random}", x %></li>
<% else
x = cards_wrong_path %>
<li class="btn btn-small btn-info flash"><%= link_to "#{@random}", x %></li>
<% end %>
<% end %>