Admins and Customers vs. Users

Hello,

I wanted to ask how do most people approach this:
I have several staff that act as admins and have control of products,
customers, etc... I also have customers that can log in and change
their details, password, view previous orders, make new orders, etc...
Furthermore, each customer is assigned a discount level.

Now, I wanted to ask, would you normally separate them into two
separate objects (and two separate tables) or would you use just one
object 'Users' with a boolean defining whether they are admin or not?
Also, if Admins and Customers approach was selected, how would you
suggest implementing login?
Just trying to plan my application and how I should tackle this.

Cheers,
Elle

elle wrote:

Hello,

I wanted to ask how do most people approach this:
I have several staff that act as admins and have control of products,
customers, etc... I also have customers that can log in and change
their details, password, view previous orders, make new orders, etc...
Furthermore, each customer is assigned a discount level.

Now, I wanted to ask, would you normally separate them into two
separate objects (and two separate tables) or would you use just one
object 'Users' with a boolean defining whether they are admin or not?
Also, if Admins and Customers approach was selected, how would you
suggest implementing login?
Just trying to plan my application and how I should tackle this.

I think that you might find it profitable to read up on Authorization
and Rails. You can start with these if google does not help:

http://www.binarylogic.com/2008/11/3/tutorial-authlogic-basic-setup
http://code.google.com/p/rails-authorization-plugin/

elle wrote:

Hello,

I wanted to ask how do most people approach this:
I have several staff that act as admins and have control of products,
customers, etc... I also have customers that can log in and change
their details, password, view previous orders, make new orders, etc...
Furthermore, each customer is assigned a discount level.

Now, I wanted to ask, would you normally separate them into two
separate objects (and two separate tables) or would you use just one
object 'Users' with a boolean defining whether they are admin or not?
Also, if Admins and Customers approach was selected, how would you
suggest implementing login?
Just trying to plan my application and how I should tackle this.

Cheers,
Elle

A boolean can be a limit , use an integer so later you can define
something in the middle (like a tutor , helpdesk user, helpdesk manager,
partner )

If you need some more flexible you can use 3 table ,
User , Group and Role

Maybe this can give you some hint
http://docs.liferay.com/portal/4.2/official/liferay-portal-administration-guide-4.2/multipage/ch03.html

I was thinking about using Authlogic -- but that wasn't my question.

My logic tells me to create admins and customers instead of just users
-- just wanted to check what others usually do.

Haven't thought of it like that. Going to read the link now.