[font="Tahoma"][rtl][right]
آقا ببنید این مشکل برای چیه؟هرکاری میکنم نمیتونم مشکلُ رفع کنم.
توو table یه سری رکورد دارم که هیچ PRIMARY KEY براش تعیین نشده.من با find() رکورد مورد نظرمو پیدا میکنم وقتی میخوام محتویات رکورد رو تغییرش بدم خطا میده.
کدم هم اینه:
[/right]
[/rtl][/font]
<?php
public function actionUpdate($tb, $id){
$model = new Database($tb);
if( isset($_REQUEST["Database"]) ){
//set CDbCriteria.
$criteria = new CDbCriteria;
$criteria->condition = 'ID=:_id';
$criteria->params = array(":_id"=>$id);
$r = $model->find($criteria);
//$r->unsetAttributes();//clear any default values.
$r->email = $_REQUEST["Database"]["email"];
$r->update( array('email, name, ID') );
$this->redirect('view', array('row'=>$r));
}else{
$this->render('update', array('row'=>$model->find("ID='{$id}'"), 'model'=>$model, ));
}
}
[font="Tahoma"][right]خطایی هم که میده اینه:
[/right]
The active record cannot be updated because it is new.
[rtl][right]اینم بگم وقتی داخل table یه فیلد PRIMARY KEY تعیین میکنم میتونم با updateByPk محتویات فیلدهارو تغییر بدم.
مشکل کجاست؟
[/right][/rtl][/font]