处理来自一个控制器操作的AJAX和requestAction调用

时间:2012-09-10 19:39:42

标签: cakephp cakephp-1.3 cakephp-2.0

我的问题很简单。

我在CakePHP手册中对此进行了研究,但今天GoDaddy已经关闭,http://www.cakephp.org

也是如此

在控制器的操作(Cake 1.3)中,可以检查是否使用requestAction进行调用。我想执行相同的任务,但是从同一个动作处理AJAX和requestAction。

另外,你能否解释一下我在Cake 1.3和Cake 2.0中如何做到这一点之间的区别,因为我很快就会升级。

1 个答案:

答案 0 :(得分:2)

检查请求是否为AJAX:

CakePHP 1.3

$this->RequestHandler->isAjax()

CakePHP 2.x

$this->request->is('ajax')

修改

检测requestAction()是否调用了该动作,并在CakePHP 2.x上进行了测试。

$this->request->params['requested']
// set to (int) 1 if called by requestAction 
// won't be set if it was not called by requestAction

不确定1.3。按照Davor Lozic的建议拨打debug($this),或在pr($this)上将debug设置为1或更高,core.php,并检查是否存在。