2013-03-04 37 views
0

是否可以在Yii中以編程方式將參數傳遞給搜索方法? 我有表格Team and Workers和我創建的add workers to the team功能。我想顯示CGridView搜索哪些將顯示除分配給實際編輯團隊的所有工作人員。如何實現它?以編程方式傳遞常量'NOT LIKE'參數

+0

您需要向我們展示一些代碼! – darkheir 2013-03-04 16:19:14

+0

發佈了一些相關代碼 – dInGd0nG 2013-03-04 16:19:20

回答

0

通常GridView控件調用模型的search()方法,你可以很容易地修改此方法來添加,如可選的參數:

public function search($notLike = false){ 
    if($notLike) { 
     //add the new sql condition not like 
    } 
} 
+0

是的,我甚至可以聲明CDbCriteria作爲參數並傳遞它,但是如何在CGridView中使用它?它會一直工作,直到您更改gridview中的一個填充項 - 之後它完全忽略了該值。 – Joe 2013-06-05 09:36:32

0

只需使用

$criteria->addSearchCondition($column, $keyword, $escape, 'AND', $like) 

例如

$criteria->addSearchCondition('CustomerName', 'Jo', false, 'AND', 'NOT LIKE') 
// Column 'CustomerName' 
// Value to look for 'Jo' 
// escape value? false 
// append to query using 'AND' 
// Compare using Not Like 
//  This should generate: "... AND CustomerName LIKE 'Jo'" 

結帳CDbCriteria->addSearchCondition()

相關問題