У меня действительно странная ошибка, возникающая в приложении CakePHP, над которым я работал.
У меня есть следующий метод в моем users_controller.php, который читает текущего вошедшего в систему пользователя и отправляет данные в представление и устанавливает title_for_layout для имени пользователя: -
function account() {
$this->User->id = $this->Auth->user('id');
$this->set('User', $this->User->read());
$this->set('title_for_layout', 'Welcome '.$this->User->Contact->field('name'));
}
На мой взгляд, у меня есть (между прочим): -
<?php echo $User['Contact']['name'] ?>
Все в представлении выглядит хорошо. Он выводит поля для правильного пользователя (того, в котором я в данный момент вошел как). Однако title_for_layout использует совершенно другие данные пользователя. Так что $this->User->Contact->field('name')
не то же самое, что $User['Contact']['name']
!
Я не могу определить, что здесь происходит, так что надеюсь, что кто-то там укажет на мою ошибку.