Comments:
[log in] or [register] to leave a comment for this folder.
Go to: all folders
Go to: folder treetops
Drupal Data Model
Setup: 07-May-2013 [229]
Part of unassigned
With lots of software dev experience, but little Drupal experience, here's my take:
The assembled collection of render arrays, culminating in $page, is a classic Data Model consisting of (as we know) nested arrays. Each of these nested arrays is an Abstract Data Type often (but not always) identified by its "#type" property. Each abstract data type consists of properties ("#"-prefixed) and data (non-"#"-prefixed).
In a more general sense, I see Drupal as a dispatch-driven state change machine with a service-oriented architecture. The state change machine through its service calls to modules (aka "hooks") alters (parts of) the data model in progressive stages through the life cycle of a website request, until the data structure conforms to a renderable structure - hence the name "renderable". But it's important to note that some of the data doesn't start out as renderable. For an example, follow the stages of transformation of $user data to user->content and finally the &$build (renderable) structure.
Setup: 07-May-2013 [229]
Part of unassigned
DrupalCon SF 2010: Page render drill down in Drupal 7
Part of: Drupal Data Model Understanding Drupal
Date: 07-May-2013 direct link [232]
Part of: Drupal Data Model Understanding Drupal
Date: 07-May-2013 direct link [231]