remove document field

This commit is contained in:
evgen-d 2014-08-12 10:42:38 +04:00
parent 6790b11451
commit cd9bbb9770

View File

@ -16,16 +16,6 @@ use triagens\ArangoDb\Document;
abstract class ActiveRecord extends BaseActiveRecord abstract class ActiveRecord extends BaseActiveRecord
{ {
/** @var Document $document */
private $document;
public function __construct($config = [])
{
$this->document = new Document();
parent::__construct($config);
}
public function mergeAttribute($name, $value) public function mergeAttribute($name, $value)
{ {
$newValue = $this->getAttribute($name); $newValue = $this->getAttribute($name);
@ -46,12 +36,6 @@ abstract class ActiveRecord extends BaseActiveRecord
return Inflector::camel2id(StringHelper::basename(get_called_class()), '_'); return Inflector::camel2id(StringHelper::basename(get_called_class()), '_');
} }
public function setAttribute($name, $value)
{
$this->document->set($name, $value);
parent::setAttribute($name, $value);
}
/** /**
* Returns the primary key **name(s)** for this AR class. * Returns the primary key **name(s)** for this AR class.
* *
@ -136,13 +120,10 @@ abstract class ActiveRecord extends BaseActiveRecord
*/ */
public static function populateRecord($record, $row) public static function populateRecord($record, $row)
{ {
if (is_array($row)) { if ($row instanceof Document) {
$document = Document::createFromArray($row);
} else {
$document = $row;
$row = $row->getAll(); $row = $row->getAll();
} }
$record->document = $document;
parent::populateRecord($record, $row); parent::populateRecord($record, $row);
} }
@ -205,7 +186,7 @@ abstract class ActiveRecord extends BaseActiveRecord
$this->setIsNewRecord(false); $this->setIsNewRecord(false);
$changedAttributes = array_fill_keys(array_keys($values), null); $changedAttributes = array_fill_keys(array_keys($values), null);
$this->setOldAttributes($this->document->getAll()); $this->setOldAttributes($values);
$this->afterSave(true, $changedAttributes); $this->afterSave(true, $changedAttributes);
return true; return true;
@ -397,20 +378,6 @@ abstract class ActiveRecord extends BaseActiveRecord
return $result; return $result;
} }
/**
* Returns a value indicating whether the current record is new (not saved in the database).
* @return boolean whether the record is new and should be inserted when calling [[save()]].
*/
public function getIsNewRecord()
{
return $this->document->getIsNew();
}
public function setIsNewRecord($value)
{
$this->document->setIsNew($value);
}
public function init() public function init()
{ {
parent::init(); parent::init();