Three easy steps
1) configure function
Add an input for each field you want to include in your filter
复制代码 代码如下:
$this->widgetSchema['name'] = new sfWidgetFormFilterInput(array('with_empty' => false));
$this->validatorSchema['name'] = new sfValidatorPass(array('required' => false));
2) add a query modification when filtering for that field I've done it for Doctrine. Pay atention to the method name addFIELDColumnQuery.
复制代码 代码如下:
public function addNameColumnQuery(Doctrine_Query $query, $field, $values)
{
if (is_array($values) && isset($values['text']) && '' != $values['text'])
{
$query->leftJoin('r.Translation t')
// ->andWhere('t.lang = ?', $especify_one_language) // or it will search in all of them
->andWhere('CONCAT(t.name, t.shortname) like ?', '%' . $values['text'] . '%');
}
}
3) Add your searching fields
复制代码 代码如下:
public function getFields()
{
return parent::getFields() + array('name' => 'Text');
}
From: http://oldforum.symfony-project.org/index.php/t/24350/
http://www.bkjia.com/PHPjc/324387.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/324387.htmlTechArticleThree easy steps 1) configure function Add an input for each field you want to include in your filter 复制代码 代码如下: $this-widgetSchema['name'] = new sfWidgetFormFilterI...
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn