Admin generator, filters and I18n

yipeiwu_com6年前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获取参数的几种方法总结

php获取参数的几种方法总结 $value = $_POST["value"];//取得post中的       ...

ThinkPHP路由详解

有了基本配置,我们就可以来访问我们的应用默认首页了。进入到项目目录,可以直接使用PHP内置服务器来开始访问,比如: php -S localhost:8999 浏览器输入loc...

php curl中gzip的压缩性能测试实例分析

本文实例分析了php curl中gzip的压缩性能测试。分享给大家供大家参考,具体如下: 前因: 请求接口次数很多,每日两亿多次,主要是有些接口返回数据量很大高达110KB(为了减少请求...

php计算title标题相似比的方法

本文实例讲述了php计算title标题相似比的方法。分享给大家供大家参考。具体如下: <?php /* * * @param string $title_1 题目...

PHP实现将科学计数法转换为原始数字字符串的方法

本文实例讲述了PHP实现将科学计数法转换为原始数字字符串的方法,分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:function NumToStr($num){ &nb...