$this->model = Doctrine::getTable('Model');
$model = $this->model->find(1);
var_dump($model->id);
// returns: string '1' (length=1)
var_dump($model->toArray());
// returns: array
// 'id' => null
// ...
为什么会这样?
答案 0 :(得分:2)
好的,刚刚发现,它与我模型中的__construct()有关。 我把它拿出来,我的数组中有一个id。
所以我猜我的下一个问题是,如何使用__construct()并仍然使用toArray()函数?
(哦,是的,当然,我正在调用parent :: __ construct()...)
我找到了自己问题的答案。
public function __construct()
{
parent::__construct(Doctrine::getTable('Model'));
}
您必须将Doctrine_Table的新实例传递给Doctrine_Record __construct()方法。
即使在我找到答案之后,我也无法在网上找到答案,所以我将其留在这里,万一其他人需要它。