This commit is contained in:
parent
63bca659f8
commit
4d0310bfd5
@ -277,6 +277,10 @@ class Doctrine_Collection extends Doctrine_Access implements Countable, Iterator
|
||||
{
|
||||
return isset($this->data[$key]);
|
||||
}
|
||||
public function search(Doctrine_Record $record)
|
||||
{
|
||||
return array_search($record, $this->data, true);
|
||||
}
|
||||
/**
|
||||
* get
|
||||
* returns a record for given key
|
||||
|
@ -46,6 +46,19 @@ class Doctrine_Hydrate_Record
|
||||
|
||||
return $coll;
|
||||
}
|
||||
public function search(Doctrine_Record $record, Doctrine_Collection $coll)
|
||||
{
|
||||
return array_search($record, $coll->getData(), true);
|
||||
}
|
||||
public function initRelated($record, $name)
|
||||
{
|
||||
if ( ! is_array($record)) {
|
||||
$record[$name];
|
||||
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
public function registerCollection(Doctrine_Collection $coll)
|
||||
{
|
||||
$this->_collections[] = $coll;
|
||||
|
@ -690,11 +690,11 @@ abstract class Doctrine_Record extends Doctrine_Access implements Countable, Ite
|
||||
* returns a value of a property or a related component
|
||||
*
|
||||
* @param mixed $name name of the property or related component
|
||||
* @param boolean $invoke whether or not to invoke the onGetProperty listener
|
||||
* @param boolean $load whether or not to invoke the loading procedure
|
||||
* @throws Doctrine_Record_Exception if trying to get a value of unknown property / related component
|
||||
* @return mixed
|
||||
*/
|
||||
public function get($name, $invoke = true)
|
||||
public function get($name, $load = true)
|
||||
{
|
||||
$value = self::$_null;
|
||||
$lower = strtolower($name);
|
||||
@ -726,9 +726,14 @@ abstract class Doctrine_Record extends Doctrine_Access implements Countable, Ite
|
||||
}
|
||||
|
||||
try {
|
||||
if ( ! isset($this->_references[$name])) {
|
||||
$this->loadReference($name);
|
||||
|
||||
if ( ! isset($this->_references[$name]) && $load) {
|
||||
|
||||
$rel = $this->_table->getRelation($name);
|
||||
|
||||
$this->_references[$name] = $rel->fetchRelatedFor($this);
|
||||
}
|
||||
|
||||
} catch(Doctrine_Table_Exception $e) {
|
||||
throw new Doctrine_Record_Exception("Unknown property / related component '$name'.");
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user