我对Yii相当新,我有一个小问题,但无法弄明白。问题是,当我在我的一个模型中调用Yii时(活动记录)$ this-> attributes ='something';我收到错误“Property”SiteController.attributes“未定义。”
我在控制器中有这个:
public function actionIndex()
{
// Create new clients active record
$client = new Clients;
// Check if user send some request
if (isSet($_POST)){
switch($_POST["action"]){
case 'newClient':
$registered = $client::addClient($_POST);
}
}
// render the view
$this->render('landing',array(
// Objects
'client' => $client,
// Variables
'registered' => $registered,
));
return true;
}
,这在模型中:
public function addClient($data){
// Set data
$this->attributes = $data["Clients"];
$this->password = self::generatePassword(6);
// Proceed
$this->setScenario('insert');
return true;
}
功能当然不完整,但这是我得到错误的地方。我究竟做错了什么?谢谢
答案 0 :(得分:2)
您正在以静态方法调用该函数。
$registered = $client::addClient($_POST);
应该是
$registered = $client->addClient($_POST);
答案 1 :(得分:0)
当像我这样的东西发生在我身上的时候我就是var_dump()。也许这个不是您认为的这个。
否则我建议检查Yii生成的代码。几乎不熟悉该框架,但检查您或您的IDE没有搞砸任何C风格的评论。检查拼写错误,代码,元,表。另外,请检查并确保您没有名称相同的实体,SiteController
听起来有点通用。