mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
bdb1a95758
API Standardise Relation interface
44 lines
977 B
PHP
44 lines
977 B
PHP
<?php
|
|
|
|
namespace SilverStripe\Model;
|
|
|
|
use DBField;
|
|
use SS_Filterable;
|
|
use SS_Limitable;
|
|
use SS_List;
|
|
use SS_Sortable;
|
|
|
|
/**
|
|
* Abstract representation of a DB relation field, either saved or in memory
|
|
*
|
|
* @package framework
|
|
* @subpackage model
|
|
*/
|
|
interface Relation extends SS_List, SS_Filterable, SS_Sortable, SS_Limitable {
|
|
|
|
/**
|
|
* Sets the ComponentSet to be the given ID list.
|
|
* Records will be added and deleted as appropriate.
|
|
*
|
|
* @param array $idList List of IDs.
|
|
*/
|
|
public function setByIDList($idList);
|
|
|
|
/**
|
|
* Returns an array with both the keys and values set to the IDs of the records in this list.
|
|
*
|
|
* Does not return the IDs for unsaved DataObjects
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getIDList();
|
|
|
|
/**
|
|
* Return the DBField object that represents the given field on the related class.
|
|
*
|
|
* @param string $fieldName Name of the field
|
|
* @return DBField The field as a DBField object
|
|
*/
|
|
public function dbObject($fieldName);
|
|
}
|