Weird ever loop question

Hi, folks,     I've run into a weird problem when I was trying to implement an authentication system myself, here is the adminController code,

class AdminController < ApplicationController   before_filter :check_authentication, :except => [:signin_form, :signin]

  def index   end

  def signin_form   end

  def signin     session[:user] = User.authenticate(params[:username], params[:password]).id     redirect_to :action=>session[:intended_action]   end

  def check_authentication     unless session[:user]       session[:intended_action] = action_name       redirect_to :action=>"singin_form"     end   end end

I restart my webrick server and I typed http://localhost:3000/admin, it should go to signin_form.rhtml to ask me sign in, but what happned is ever loop sending request to signin_form, any informative tips will be appreciated.

All the best, Liu Hao

Hello Liu:

Firstly, I wouldn't implement an authentication system your self as there are plenty of good plugins out there for that. Try checking out

* http://svn.techno-weenie.net/projects/plugins/acts_as_authenticated/ * http://svn.techno-weenie.net/projects/plugins/restful_authentication/

Secondly, there are a couple of issues with the code in the check_authentication method:

      session[:intended_action] = action_name # where is action_name being set/coming from?       redirect_to :action=>"singin_form" Your redirect action is incorrrect - should be signin_form

Cheers, Nicholas