0
默认情况下,SocialENgine会在每个控制器操作结束时自动呈现视图。如果你使用布局,它也会呈现。这对普通网页来说很好,但是当你发送AJAX响应时,你并不需要这些。如何防止SocialEngine在逐个操作的基础上自动呈现?有了ZendFramework,你可以这样做:防止socialengine渲染视图(对于AJAX)
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(TRUE);
而且你有机会获得一些不错的帮手,如:
$this->_helper->json($data);
...这将json_encode你的$的数据,使用JSON头输出,并在死亡最后,所以从操作返回的干净的JSON没有视图渲染,这几乎就是我想要的。
但是这些解决方案都不能在SocialEngine中工作 - $ this - > _ helper总是像$ this-> view - > _ helper一样是一个空数组。并返回$ this-> setNoRender()只会阻止当前元素的渲染,而不是整个页面。