$ this-> params在cakephp模型中返回null

时间:2013-10-13 23:31:34

标签: php cakephp cakephp-appmodel cakephp-2.4

我决定在之前的某些模型中添加一些关于控制器和动作的额外数据,如下所示:

//in the model
public function beforeSave() {
        $this->data[$this->alias]['path'] = 'blah blan';
        debug($this->params);
        die(); //for debugging!
}

debug的打印输出返回 null !我使用的模型是评论插件的评论模型。我需要访问params来获取当前的控制器,动作和一些url参数。

实际上,我计划改变注释插件列出基于模型的注释的方式,以基于路径来解决针对多个操作的需求注释问题,这取决于相同的模型。 < / p>

1 个答案:

答案 0 :(得分:4)

最后我找到了解决方案:它位于Router对象方法getParams();

//in the model
public function beforeSave() {
        $this->data[$this->alias]['path'] = 'blah blan';
        debug(Router::getParams());
        die(); //for debugging!
}
它打印出类似的东西:

array(
    'plugin' => null,
    'controller' => 'qurans',
    'action' => 'view',
    'named' => array(
        'comment' => '0'
    ),
    'pass' => array(
        (int) 0 => '8'
    )
)