# (no subject)

**URL:** <https://www.ruby-forum.com/t/no-subject/148934>\
**Category:** Rails\
**Created:** [September 18, 2008, 2:08pm UTC](https://www.ruby-forum.com/t/no-subject/148934 "2008-09-18T14:08:40Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![gilbertsavier](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/e495f1/32.png) [@gilbertsavier](https://www.ruby-forum.com/u/gilbertsavier)\
**Post date:** [September 18, 2008, 2:08pm UTC](https://www.ruby-forum.com/t/no-subject/148934/1 "2008-09-18T14:08:40Z")

</div>

Hello all.

I have been trying to develop an authentication program. I have been  
able to redirect a user to any page but have not been able to  
pesonalise it so that users can only access their personal accounts.  
thank you

class UserController \< ApplicationController

def login

```
  @user = User.new
  @user.username = params[:username]

```

end

def process\_login  
if user = User.authenticate(params[:user])  
session[:id] = user.id && params[:username] != ‘admin’#  
Remember the user’s id during this session

```
      #if User.username == 'admin'
      redirect_to session[:return_to] || '/customer/new'
      else

    if user = User.authenticate(params[:user]) &&

```

params[:username] == ‘admin’  
session[:id] = user.id  
redirect\_to session[:return\_to] || ‘/’  
else  
flash[:error] = ‘Invalid login.’  
redirect\_to :action =\> ‘login’, :username =\>  
params[:user][:username]  
end  
end

end

def logout  
reset\_session  
flash[:message] = ‘Logged out.’  
redirect\_to :action =\> ‘login’

end

def my\_account  
end  
end

–  
Love is the greatest

---

<div class="post-metadata">

**Author:** ![gilbertsavier](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/e495f1/32.png) [@gilbertsavier](https://www.ruby-forum.com/u/gilbertsavier)\
**Post date:** [September 18, 2008, 2:25pm UTC](https://www.ruby-forum.com/t/no-subject/148934/2 "2008-09-18T14:25:42Z")

</div>

On 9/18/08, Gilbert Gift S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:\>\> Hello  
all.\>\> I have been trying to develop an authentication program. I have  
been\> able to redirect a user to any page but have not been able to\>  
pesonalise it so that users can only access their personal accounts.\>  
thank you\>\>I am using ruby 1.8 and here is my controller\>\> class  
UserController \< ApplicationController\>\> def login\>\> @user =  
User.new\> @user.username = params[:username]\>\> end\>\> def  
process\_login\> if user = User.authenticate(params[:user])\>  
session[:id] = user.id && params[:username] != ‘admin’#\> Remember the  
user’s id during this session\>\> #if User.username == ‘admin’\>  
redirect\_to session[:return\_to] || ‘/customer/new’\>  
else\> \> if user = User.authenticate(params[:user])  
&&\> params[:username] == ‘admin’\> session[:id] = user.id\>  
redirect\_to session[:return\_to] || ‘/’ \> else\>  
flash[:error] = ‘Invalid login.’\> redirect\_to :action =\>  
‘login’, :username =\>\> params[:user][:username]\> end\>  
end\>\> end\>\> def logout\> reset\_session\> flash[:message] =  
‘Logged out.’\> redirect\_to :action =\> ‘login’\>\> end\>\> def  
my\_account\> end\> end\>\>\> – \> Love is the greatest\>\>  
greatest

---

<div class="post-metadata">

**Author:** ![gilbertsavier](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/e495f1/32.png) [@gilbertsavier](https://www.ruby-forum.com/u/gilbertsavier)\
**Post date:** [September 18, 2008, 2:51pm UTC](https://www.ruby-forum.com/t/no-subject/148934/3 "2008-09-18T14:51:13Z")

</div>

There are nice authentication frameworks out there… I suggest trying  
those. You can use them or study them until you understand how to  
make your own.

Check out [http://railsforum.com/viewtopic.php?id=14216&p=1](http://railsforum.com/viewtopic.php?id=14216&p=1)

On Thu, Sep 18, 2008 at 8:08 PM, Gilbert Gift S.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> class UserController \< ApplicationController  
> session[:id] = user.id && params[:username] != ‘admin’#  
> else  
> redirect\_to :action =\> ‘login’
> 
> >

–  
Ramon T.
