我的代码看起来像这样:
if ($this->request->is('ajax')) {
$this->Comment->Save();
$this->set('comment', $this->Comment->read());
$this->set('_serialize', array('comment');
}
我没有使用 Ajax 响应,而是收到一个视图丢失的错误。还有其他需要用json响应的东西吗?我认为这是使用响应助手“自动”处理的。
By enabling RequestHandlerComponent in your application, and enabling support for the xml
and or json extensions, you can automatically leverage the new view classes.
所以你仍然需要启用一些东西:
添加
public $components = array('RequestHandler');
并在 routes.php
Router::parseExtensions(array('json'));
你可能必须让你的 url 看起来像 controller/action.json 才能让 automagic 工作。不过,您可以在控制器中添加 $this->viewClass = 'Json' (不是 100% 确定)。