mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
27113f82c3
In 3.0 there was some confusion about whether DataLists and ArrayLists were mutable or not. If DataLists were immutable, they'd return the result, and your code would look like $list = $list->filter(....); If DataLists were mutable, they'd operate on themselves, returning nothing, and your code would look like $list->filter(....); This makes all DataLists and ArrayList immutable for all _searching_ operations. Operations on DataList that modify the underlying SQL data store remain mutating. - These functions no longer mutate the existing object, and if you do not capture the value returned by them will have no effect: ArrayList#reverse ArrayList#sort ArrayList#filter ArrayList#exclude DataList#dataQuery (use DataList#alterDataQuery to modify dataQuery in a safe manner) DataList#where DataList#limit DataList#sort DataList#addFilter DataList#applyFilterContext DataList#innerJoin DataList#leftJoin DataList#find DataList#byIDs DataList#reverse - DataList#setDataQueryParam has been added as syntactic sugar around the most common cause of accessing the dataQuery directly - setting query parameters - RelationList#setForeignID has been removed. Always use RelationList#forForeignID when querying, and overload RelationList#foreignIDList when subclassing. - Relatedly,the protected variable RelationList->foreignID has been removed, as the ID is now stored on a query parameter. Use RelationList#getForeignID to read it. |
||
---|---|---|
.. | ||
fieldtypes | ||
Aggregate.php | ||
ArrayList.php | ||
Database.php | ||
DatabaseAdmin.php | ||
DataDifferencer.php | ||
DataExtension.php | ||
DataList.php | ||
DataModel.php | ||
DataObject.php | ||
DataObjectInterface.php | ||
DataQuery.php | ||
DB.php | ||
Filterable.php | ||
GroupedList.php | ||
HasManyList.php | ||
HiddenClass.php | ||
Hierarchy.php | ||
HTMLValue.php | ||
Image_Backend.php | ||
Image.php | ||
Limitable.php | ||
List.php | ||
ListDecorator.php | ||
ManyManyList.php | ||
Map.php | ||
MySQLDatabase.php | ||
RelationList.php | ||
Sortable.php | ||
SQLMap.php | ||
SQLQuery.php | ||
Transliterator.php | ||
UnsavedRelationList.php | ||
URLSegmentFilter.php | ||
ValidationException.php | ||
ValidationResult.php | ||
Versioned.php |