2012-05-05 2 views
2

"TrackStar"프로젝트에서 작업중인 Agile Web Application Development with Yii 1.1 and PHP5과 함께 팔로우하고 있습니다. 내 인생에서 나는 내 문제가 어디 있는지 이해할 수 없다. 나는 예외를 받고 있어요 :CActiveDataProvider가 조건의 매개 변수를 해석하지 않습니다.

CDbCommand는 SQL 문을 실행하지 못했습니다 : SQLSTATE [HY093] : 잘못된 매개 변수 번호 : 매개 변수가 정의되지 않았습니다. 실행 된 SQL 문을했다 : SELECT COUNT (*) PROJECT_ID =이 tbl_issuet FROM :

그것은 (이 멍청한 놈의 해석에) 표시를 projectId 내 CActiveDataProvider의 PARAMS이 일부에서와 기준에 해결하는 방법하지를 것을 보기 :

(in /protected/controllers/ProjectController.php) 

55   public function actionView() 
56   { 
57    $issueDataProvider = new CActiveDataProvider('Issue', array(
58     'criteria' => array(
59      'condition' => 'project_id=:projectId', 
60      'params' => array(':projectId=' => $this->loadModel()->id), 
61    ), 
62     'pagination' => array( 
63      'pageSize' => 1, 
64    ),  
65   )); 
66    $this->render('view',array(
67      'model'=>$this->loadModel(), 
68      'issueDataProvider' => $issueDataProvider, 
69   )); 
70   } 

나는 github repo에 내 코드를 확인하고 난 아무 차이를 찾을 수 없습니다. 코드를 모두 게시 할 필요없이 여기에 실종 된 간단한 내용이 있습니까?

답변

3

기준의 매개 변수에 오류가있는 것 같습니다. (= 이후 : projectId). 오른쪽 문은

'params' => array(':projectId' => $this->loadModel()->id), 

에 Params 배열 매개 변수 자리 표시 자에 의해 색인 쿼리 매개 변수 값의 목록입니다. 예를 들어, array (': name'=> 'Dan', ': age'=> '31').

+0

이런 ... 하루 종일. 고맙습니다.. :) –

관련 문제