XML ビューは、この例のインデックス ビューに非常によく似ているはずです。
例と同じ編集機能を使用していると仮定しています。
public function edit($id) {
$this->Recipe->id = $id;
if ($this->Recipe->save($this->request->data)) {
$message = 'Saved';
} else {
$message = 'Error';
}
$this->set(array(
'message' => $message,
'_serialize' => array('message')
));
}
本に述べられているように:
CakePHP に組み込まれている JSON および XML ビューを使用して、JSON ビューを簡単に作成することもできます。組み込みの XmlView を使用することで、_serialize ビュー変数を定義できます。この特別なビュー変数は、XmlView が XML にシリアル化するビュー変数を定義するために使用されます。
ただし、組み込みのビューを使用していない場合は、ビュー内の XML を手動で指示することができます ( XML が自動的に生成されないよう_serialize
に、関数からビュー var を削除してください)。edit
ビューは次のようになります。
$xml = Xml::fromArray(array('message' => $message));
echo $xml->asXML();
これにより、成功メッセージをノードとして含む非常に基本的な XML ドキュメントが出力されます。気軽に情報を追加できます。たとえば、更新が失敗した場合は、XML 応答に検証エラーを含めて、何が検証されなかったのかをユーザーに伝える必要があります。