如何从Yii中的模型访问控制器功能?

时间:2013-09-11 16:19:10

标签: php yii

我想从模型中访问Yii的createUrl()函数。

这是我在afterSave()中的代码。

 public function afterSave(){
    ...more code...

      $message = "Hi ".$this->firstname.' '.$this->lastname.',\n
            Welcome to XYZ. This is the mail that is sent for the activation of your account.\n
            Kindly click this link or copy paste it to the URL and register your account.'.$this->createUrl('/user/activate',array('id'=>$this->id,'key'=>$randomKey));
    ...morecode...
    }

这是必须纠正的路线。

  

$这 - > createUrl( '/用户/激活',阵列( 'ID'=> $这 - >编号, '关键'=> $随机key))

显然,它给了我一个错误。那么如何在模型中使用createUrl()函数呢?

此致

2 个答案:

答案 0 :(得分:4)

您可以改为使用Yii::app()

Yii::app()->createUrl('/user/activate',array('id'=>$this->id,'key'=>$randomKey))

相关问题:  createUrl Yii - should we call it on controller view, or doesn't matter?

答案 1 :(得分:2)

或:

CHtml::link('a_href_label',array('/module_if_exists/controller/action','id'=>$this->id,'key'=>$randomKey),array('target'=>'_blank'));