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.