Admin generator, filters and I18n

yipeiwu_com5年前PHP代码库
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/

相关文章

php使用unset()删除数组中某个单元(键)的方法

本文实例讲述了php使用unset()删除数组中某个单元(键)的方法。分享给大家供大家参考。具体分析如下: unset既可以删除变量,也可以删除数组中某个单元。但要注意的是,数组不会重建...

php实现递归抓取网页类实例

本文实例讲述了php实现递归抓取网页类的方法。分享给大家供大家参考。具体如下: <?php class crawler{ private $_depth=5; pr...

golang、python、php、c++、c、java、Nodejs性能对比

golang、python、php、c++、c、java、Nodejs性能对比

  本人在PHP/C++/Go/Py时,突发奇想,想把最近主流的编程语言性能作个简单的比较, 至于怎么比,还是不得不用神奇的斐波那契算法。可能是比较常用或好玩吧。   好了,talk i...

phpmyadmin出现Cannot start session without errors问题解决方法

PHPMYADMIN出问题了,总一个劲报错。 复制代码 代码如下:Cannot start session without errors, please check errors giv...

PHP屏蔽过滤指定关键字的方法

本文实例讲述了PHP屏蔽过滤指定关键字的方法。分享给大家供大家参考。具体分析如下: 实现思路: 一、把关键字专门写在一个文本文件里,每行一个,数量不限,有多少写多少。 二、PHP读取关键...