2013-03-04 57 views
0

我知道有很多主題就這一點,但我找遍&試過很多,它仍然沒有工作。搜索按相關模型場

我有表:團隊和工作者。任何工人都可以被分配到一個團隊。所以在工人經理,我想通過團隊名稱搜索工人。

我得到了列等。但是當我鍵入隊名的一部分 - 搜索啓動,但在書面文字dissappears和搜索不關心的領域。我用Firebug檢查了AJAX調用,並且有一個名爲teamName的字段(我將公共字段添加到了我的Worker模型類中)。但是,當我在我的搜索方法中使用print_r條件時 - 沒有條件。 這怎麼可能?我如何執行相關字段的搜索?

EDIT(我的檢索算法()方法):

public function dsearch() 
{ 
    // Warning: Please modify the following code to remove attributes that 
    // should not be searched. 

    $criteria=new CDbCriteria; 

    $criteria->compare('idWorker',$this->idWorker); 
    $criteria->compare('idLeaderType',$this->idLeaderType); 
    $criteria->compare('t.idTeam',$this->idTeam); 
    $criteria->compare('idVoip',$this->idVoip); 
    $criteria->compare('workLogin',$this->workLogin,true); 
    $criteria->compare('workPass',$this->workPass,true); 
    $criteria->compare('name',$this->name,true); 
    $criteria->compare('surname',$this->surname,true); 
    $criteria->compare('madeCalls',$this->madeCalls); 
    $criteria->compare('deleted',$this->deleted); 
    $criteria->compare('liveChanges',$this->liveChanges); 
    $criteria->compare('confirmer',$this->confirmer); 
    $criteria->compare('oldWorkerNum',$this->oldWorkerNum); 
    $criteria->compare('idDepart',$this->idDepart); 
    $criteria->compare('Team.name', $this->teamName, true); 
    $criteria->with=array('Team'); 
    $criteria->together = true; 

    return new CActiveDataProvider($this, array(
     'criteria'=>$criteria, 
    )); 
} 
+0

您是否已經完成了本教程:http://www.yiiframework.com/wiki/281/searching-and-sorting-by-related-model-in-cgridview/ – Kai 2013-03-04 15:22:59

+0

您是否已將'teamName'屬性設置爲在您的模型規則中安全嗎? – dInGd0nG 2013-03-04 16:21:06

+0

@ dInGd0nG - 是的。 – Joe 2013-03-05 07:15:27

回答