Tables
PermalinkI know what you mean - its a bit intimidating at first trying to trace exactly how the C5 logic runs. I find myself using the print_r function every other second. But the reason, from what I can tell, that things are so separated and have lots of loaders and such - is to keep all the individual classes and functions loosely coupled... In other words, flexible enough to be applied to several problem solving applications without having to overwrite parts of the code. For a CMS like Concrete5, I can't think of a better approach.
With attributes - since they can apply to several object types (users, files, pages, etc), it makes sense from a design perspective how the core team set things up.
Pain in the ass to learn - yes. Worth it once you do, absolutely.
Does that make sense to anyone, or am I lost (again)?
I sure would have liked a viemo screencast showing the use of adding attributes within the Dashboard's User/Page/File section(s). That would have made the "Extended Forms" addon more understandable with regards to the key/value handle input - let alone the core package.
Thanks (and, uh, sorry).
As far as a place to go to read about the c5 database, I don't know of one other than the database and the code itself. While it may seems like a bit of a pain, usually tracing through the code for DB calls or poking around in the database gets you to the right answer and proves highly educational along the way.