【CakePHP】アソシエーション設定時にバリデーションエラーのメッセージを表示させる

CakePHP 1.3.2】

【状況】
主:Userモデル->従:Profileモデル、という関係。

【方法】
いろいろ試しましたが、従属テーブルのバリデーションエラーのみ
そのメッセージをビューへ明示的に渡す必要があるようです。

【コントローラ】
//バリデーションのみを行う
if(!$this->User->saveAll($this->data, array('validate'=>'only'))){
$this->Session->setFlash('入力項目に誤りがあります。');
//従属テーブルのエラーメッセージをビューへ渡す
//(主テーブルのエラーメッセージは、自動的に渡る)
$this->set('belong_error', $this->User->Profile->invalidFields());
return;
}



【ビュー】
//主テーブルのフォーム部品は、自動的にエラーメッセージが
//渡るので、特に何もする必要はない
echo $form->input('User.mail');

//従属テーブルのフォーム部品の下にエラーメッセージを表示する
echo $form->input('Profile.name');
if(isset($belong_error['name'])){
echo $form->error('Profile.name', $belong_error['name']);
}

…ほかにもっとうまいやり方があるのでしょうか…。