In SilverStripe, application data will be represented by a DataObject class. A
DataObject subclass defines the
data columns, relationships and properties of a particular data record. For example, Member is a
which stores information about a person, CMS user or mail subscriber.
Introduction to the Data Model and ORM
Introduction to creating and querying a database records through the ORM (object-relational model)
Relations between Records
Relate models together using the ORM using has_one, has_many, and many_many.
The SS_List interface allows you to iterate through and manipulate a list of objects.
Data Types, Overloading and Casting
Learn how how data is stored going in and coming out of the ORM and how to modify it.
Modify the data model without using subclasses.
Use suffixes on your ORM queries.
Reduce risk by securing models.
Write and modify direct database queries through SQLExpression subclasses.
Model Validation and Constraints
Validate your data at the model level
Add versioning to your database content through the Versioned extension.
Building Model and Search Interfaces around Scaffolding
A Model-driven approach to defining your application UI.
Add Indexes to your Data Model to optimize database queries.
Dynamic Default Fields
Learn how to add default values to your models
Grouping DataObject sets
Learn how to split the results of a query into subgroups