yii2 select2 gridview filter searchmodel

时间:2017-04-13 11:48:10

标签: gridview filter yii2 select2 kartik-v

我正在尝试使用select2

过滤yii2 gridview

在ModelSearch中我有

 ->andFilterWhere(['like', 't_persons.functions', $this->functions ])

不幸的是,string(1)匹配10和11

enter image description here

如何从逗号分隔字段中过滤整数值?

2 个答案:

答案 0 :(得分:0)

如果您有一串逗号分隔值,我会尝试:

->andFilterWhere('t_persons.functions in ('.$this->functions.')')

答案 1 :(得分:0)

要匹配逗号分隔字段中的单个值,请使用FIND_IN_SET,例如:

SELECT * FROM t_persons WHERE FIND_IN_SET('3', functions);

要将其集成到Yii2中,您可以(如果我正确理解了您的命名法)使用:

->andFilterWhere(new Expression('FIND_IN_SET(:function_to_find, functions)'))->addParams([':function_to_find' => $this->functions])->asArray()->all();