控制器寫法如下//用戶管理控制器class UserController extends CController{ //顯示所有用戶 public function actionIndex(){ //$model=new User(); //$arr=$model->findAll(); //var_dump(count($arr)); } //新增用戶 public function actionCreate(){ if(!empty($_POST)){ //實例化一個模型對象 var_dump(new User()); $model=new User();echo 123;exit; //var_dump($model); //給模型的屬性賦值 //對應表中有哪些字段,模型就有哪些屬性,框架會自動處理 //框架中試用了大量的魔術方法來完成這一高級特性 $model->name=$_POST['name']; //如果對象是新new出來的,還沒有保存到數據庫 //這個對象是新記錄 var_dump($model->isNewRecord); //調用模型提供的方法,讓他自己去數據庫新增記錄 $bool=$model->save(); //這個時候對象已經保存,不是新對象,答案是false var_dump($model->isNewRecord); //對象保存后,將會得到數據庫自增id,并自動更新對象的id屬性 echo $model->id; /*if($bool){ header('Location:index.php?r=user/index'); exit; }else{ echo 'error'; }*/ } $this->render('create'); }}視圖如下<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> </head> <body> <form action="index.php?r=user/create" method="post"> <input type="text" name="name" /><br> <input type="submit" value="保存"> </form> </body></html>model如下<?php//用戶的模型類class User extends CActiveRecord{ public function tableName(){ //雙花括號表示省略表前綴 return '{{user}}'; }}?>配置文件數據庫組件如下<?php//配置文件中需要返回一個關聯數組return array(//告訴yii框架,自動導入類時,需要掃描的目錄 'import'=>array( 'application.models.*', ), //組件 'components'=>array( 'db'=>array( 'connectionString'=>'mysql:host=localhost;dbname=chaoji', 'username'=>'root', 'password'=>'root', 'charset'=>'utf8', 'tablePrefix'=>'blog_', ), /*'cat'=>array( 'class'=>'ext.cat', )*/ ),);?>請大神指點
1 回答

揚帆大魚
TA貢獻1799條經驗 獲得超9個贊
看你的代碼,有個地方我看不懂,
1、$model=new User();echo 123;exit;
exit;不是die;的別名嗎?后面的代碼好像不能執(zhí)行吧....
如果不是這個原因,那么很可能是對象的安全性問題,不允許你插入數據
解決:在User Model類里
public function rules()
{
return array(
array('name', 'safe'),
),
}
- 1 回答
- 0 關注
- 196 瀏覽
添加回答
舉報
0/150
提交
取消