Liferay table column designation
I am trying to understand the field level descriptions for each table in the ray of life that are related to user management. I didn't understand the purpose of some of the columns in the following tables.
USER _
GRACELOGINCOUNT
FACEBOOKID
PORTRAITID
GROUP _
PARENTGROUPID
LIVEGROUPID
TREEPATH
TYPE_
TYPESETTINGS
REMOTESTAGINGGROUPCOUNT
ADDRESS:
TYPEID
PRIMARY_
PHONE:
TYPEID
PRIMARY_
Can someone please explain the description of the above columns. (Example: The "Status" column is used to determine if the user is in an active state or not). Likewise, I need a short description of each column that I mentioned above.
source to share
Below is a general description of some of them, but I hope you are not going to tamper with the database directly, as this is not recommended (see Olaf Kok's answer ) and this could lead to certain problems in the future.
USER _
-
GRACELOGINCOUNT
- -
FACEBOOKID
- I'm not sure if this is used anymore, since now we have a tableContact
to store id's forFacebookSn
,TwitterSn
etc. -
PORTRAITID
is a foreign key of the tableImage
that stores information about the portrait uploaded by the user.
GROUP _
-
PARENTGROUPID
- Sites can have sub-sites, so the sub-sites will have the groupId of the parent site. -
LIVEGROUPID
- Used for goal setting, stores a groupId for a live site for a delivered site. -
TREEPATH
- Saves the path to the child site, facilitates the intersection of parent-child relationships when they are deep. -
TYPE_
- is used to define different types of sites like public, private, limited or system. SeeGroupConstants
properties of the prefixed classTYPE_SITE_*
.0
for entries that are not sites, see the columnsite
. -
TYPESETTINGS
- Saves some additional configurations for the Site, for example if you have an app-adapter hook applied to the site or SEO section, etc. -
REMOTESTAGINGGROUPCOUNT
-
ADDRESS
-
TYPEID
- This is the foreign key of the tableListType
, there are different types of addresses (Billing, Others, etc.) forContact
andOrganization
. -
PRIMARY_
- Decides what is the primary address for the user, only the primary address.
PHONE
-
TYPEID
- This is a table foreign keyListType
, there are different types of phones (Business, Mobile, etc.) forContact
andOrganization
. -
PRIMARY_
- Decides who is the primary phone for the user, only one phone can be primary.
For a better understanding it would be good to go through the API Liferay, for example UserService
, GroupService
, OrganizationService
and the source code implementation classes.
source to share
So, as per the comments, you are integrating external code that accesses this database: check this statement for my opinion on using the database directly, eg. potentially write to it.
You must go through the API to properly use Liferay's user management functionality. Everything else will sooner or later lead to disaster. If you're lucky: It's early. If not: later, when you have forgotten this warning long ago.
Check out the Liferay API, which has been purposely built to provide programmatic access to everything you need. Here's UserService for example.
Trust me - you will miss many things in database understanding that you will severely break the API when Liferay finds data (or poisoned caches) later. Been there, did it. It's not pretty.
source to share