Whyte_Model_Mapper interacts with Zend Framework’s data persistence layer.
Adds an entity to database:
...
$new_id = $mapper->add($entity);
...
Parameters: | $entity (Whyte_Model_Entity) – an entity instance |
---|---|
Returns: | mixed (new record id) |
Return a single record filtered by a property value:
...
$data_array = $mapper->get('id', (int) $id);
if ($data_array)
return new Application_Model_User($data_array);
...
Parameters: |
|
---|---|
Returns: | array | null |
Update entity record identified by key property:
...
$mapper->update($user, 'id');
...
Parameters: |
|
---|
Delete record(s) by property value and return number of affected records.
... $mapper->delete(‘id’, 123); ...
Parameters: |
|
---|---|
Returns: | int |
Count all records, optionally filtered by filter condition:
return $mapper->count_all(
$mapper->get_map_value('category_id').' IN (?)',
$category_ids
);
Parameters: |
|
---|
Fetch a set of entity rows, optionally filtered by $where or $where_not parameter. Should be overridden per model for joined tables, various parameters, etc:
...
$mapper = new Application_Model_GameMapper();
$rows = $mapper->fetch_all($team_id, $cat_ids, $offset, $user_id);
...
Returns: | array |
---|
Transform Zend_Db_Table_Row to an assoc. array according to the map. This method should be used to spawn entity instances after table rows are received from DB:
$mapper = new Application_Model_GameMapper();
$rows = $mapper->fetch_all($team_id);
$result_set = array();
foreach ($rows as $row) {
$game = new self($mapper->row_to_array($row));
}
return $result_set;
Parameters: |
|
---|---|
Returns: | array |
Return mapper’s gateway. Usually an instance of Zend_Db_Table:
...
$mapper = new Application_Model_GameMapper();
$adapter = $mapper->get_gateway()->getAdapter();
$adapter->beginTransaction();
...
Returns: | null | Zend_Db_Table | Zend_Db_Table_Abstract |
---|
Return mapper’s map:
$team_mapper = new Application_Model_TeamMapper();
$team_map = $team_mapper->get_map();
$select
->joinLeft(array('team'=>'team'),
$this->_map['object_id'].' = team.id',
array('team_title'=>'team.'.$team_map['title'],
'team_logo'=>'team.'.$team_map['logo']));
Returns: | array |
---|
Get a mapped value of a property by its name:
$team_mapper = new Application_Model_TeamMapper();
$team_exist_validator = new Zend_Validate_Db_RecordExists(
$team_mapper->get_table_name(),
$team_mapper->get_map_value('id'));
Parameters: | $property (string) – property name |
---|---|
Returns: | string |
Return mapper’s table name if any:
$team_mapper = new Application_Model_TeamMapper();
$team_exist_validator = new Zend_Validate_Db_RecordExists(
$team_mapper->get_table_name(),
$team_mapper->get_map_value('id'));
Returns: | string | null |
---|