PHP Doctrine - toArray () устанавливает значение для ключа 'id' в null - PullRequest
2 голосов
/ 19 сентября 2010
$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
//            ...

Почему это происходит?

1 Ответ

2 голосов
/ 19 сентября 2010

Хорошо, только что узнал, что это связано с __construct () в моей модели. Я взял это, я получил идентификатор в моем массиве.

Так что я думаю, что мой следующий вопрос будет, как я могу использовать __construct () и все еще использовать функцию toArray ()?

(О, да, конечно, я звоню родителю :: __ construct () ...)


Я нашел ответ на свой вопрос.

  public function __construct()
  {
    parent::__construct(Doctrine::getTable('Model'));
  }

Вы должны передать новый экземпляр Doctrine_Table в метод Doctrine_Record __construct ().

Даже после того, как я нашел ответ, я не смог найти его в Интернете, поэтому я оставляю его здесь, на случай, если кому-то еще это нужно.

...