2013-08-17 81 views
0

我沒有得到來自cgridview在警予刪除,其顯示:如何刪除使用cgridview從Yii框架

錯誤400,無效的請求!

這是控制器

array('allow', // allow admin user to perform 'admin' and 'delete' actions 
      'actions'=>array('admin','delete'), 
      'users'=>array('@'), 
      //'expression'=>'Yii::app()->controller->isAdmin()', 
    ), 

在對procedurely CGRID視圖刪除找到的解決方案,請幫忙接取規則我控制器代碼

public function actionDelete($id) 

{ 
    //echo "helo"; 
    $model=new DiscountService(); 
    $model->deleteDService($id); 
    $this->render('admin',array(
      'model'=>$model, 
    )); 
} 

代碼,

回答

0

你有控制器中的「過濾器」方法? ('postOnly +刪除')?

你的刪除鏈接必須是:/ controller/action/delete?id =或者sth。它必須通過POST方法通過ajax發送。

+0

yes我有過濾器+代碼,這是我的網址,但使用它顯示錯誤400,請求無效!我有改變,在模型,控制器或cgridview,我必須把post方法!在行動管理或任何地方的任何變化,你可以把我刪除的cgidview! – user2692025

+0

嘿謝謝..它終於工作..它wasi沒有提到ajaxupdate,這必須在cgridview管理頁面提及,當我用它..它終於工作..感謝您的答案..thnkxx .. – user2692025

0

deleteDService()做什麼?如果從CActiveRecord擴展模型,則模型將繼承delete()方法。

+0

deleteDService($ id){ try { $ sql =「DELETE discount_service。* FROM discount_service WHERE discount_service.id = $ id」; \t \t \t $ connection = Yii :: app() - > db; \t \t \t $ transaction = $ connection-> beginTransaction(); $ command = $ connection-> createCommand($ sql); $ command-> execute(); $ transaction-> commit(); yi :: app() - > user-> setFlash('error',$ e);}}} catch(Exception $ e){Yii :: app() - > user-> setFlash $ this-> flash = Yii :: app() - > user-> getFlash('error'); $ this-> f = 1; $ transaction-> rollBack(); } return; }這是我的deleteDService從模型!如果我更改刪除刪除控制器和訪問規則它正在通過URL工作,但刪除方法不起作用 – user2692025

+0

嘿謝謝..它終於工作..他wasi沒有提到ajaxupdate,這必須在cgridview管理頁面中提到,當我用它..它終於工作..感謝您的答案..thnkxx .. – user2692025

0

我有類似的問題,如果加載多個jquery.js庫文件,cgridview刪除函數和大多數ajax函數將無法工作。