开发者

Zend Framework asking for view script despite setNoRender

I've made an API controller with some actions to spit out JSON for my app and I've turned off the layout and view renderer in its init() method so I've got no view scripts for this controller.

I'm trying to use my a开发者_如何学GopiController::treeAction elsewhere in the app via an actionHelper to output some JSON inline. I can access the action directly via /api/tree/id/1 which shows me the JSON data. But when I try and fetch from another controller with

$this->view->action('tree', 'api', null, array('id'=>$id))

I get an exception

Message: script 'api/tree.phtml' not found in path ([...]\application\views\scripts\)

It's right, that file doesn't exist, but I don't need it to. What am I doing wrong?


You may want to look at the Action Helper Context Switch.

You can specify an action context of 'json' for this action and then it will automatically handle disabling the layout and view script rendering.


Use $this->_helper->viewRenderer->setNoRender(true); inside action.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜