Admin generator, filters and I18n


Posted in PHP onOctober 06, 2011

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 相关文章推荐
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
逆序二维数组插入一元素的php代码
Jun 08 PHP
codeigniter自带数据库类使用方法说明
Mar 25 PHP
PHP两种去掉数组重复值的方法比较
Jun 19 PHP
PHP的pcntl多进程用法实例
Mar 19 PHP
百度地图API使用方法详解
Aug 25 PHP
php中序列化与反序列化详解
Feb 13 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
Jun 29 PHP
thinkphp5.0自定义验证规则使用方法
Nov 16 PHP
php面向对象程序设计入门教程
Jun 22 PHP
layui数据表格自定义每页条数limit设置
Oct 26 PHP
php 多继承的几种常见实现方法示例
Nov 18 PHP
如何在symfony中导出为CSV文件中的数据
Oct 06 #PHP
php中时间轴开发(刚刚、5分钟前、昨天10:23等)
Oct 03 #PHP
linux iconv方法的使用
Oct 01 #PHP
linux系统上支持php的 iconv()函数的方法
Oct 01 #PHP
php中mysql模块部分功能的简单封装
Sep 30 #PHP
php XMLWriter类的简单示例代码(RSS输出)
Sep 30 #PHP
简单的PHP缓存设计实现代码
Sep 30 #PHP
You might like
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
php模拟js函数unescape的函数代码
2012/10/20 PHP
利用php+mcDropdown实现文件路径可在下拉框选择
2013/08/07 PHP
PHP实现在线阅读PDF文件的方法
2015/06/23 PHP
laravel清除视图缓存的代码
2019/10/23 PHP
jquery实现心算练习代码
2010/12/06 Javascript
常规表格多表头查询示例
2014/02/21 Javascript
jQuery简单实现隐藏以及显示特效
2015/02/26 Javascript
BootStrap 弹出层代码
2017/02/09 Javascript
angular实现IM聊天图片发送实例
2017/05/08 Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
2018/05/28 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
详解使用mpvue开发github小程序总结
2018/07/25 Javascript
微信小程序canvas拖拽、截图组件功能
2018/09/04 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
2019/11/07 Javascript
详细分析Node.js 模块系统
2020/06/28 Javascript
基于ajax实现上传图片代码示例解析
2020/12/03 Javascript
[58:18]2018DOTA2亚洲邀请赛3月29日 小组赛B组 iG VS Mineski
2018/03/30 DOTA
python关闭windows进程的方法
2015/04/18 Python
python安装cx_Oracle模块常见问题与解决方法
2017/02/21 Python
Numpy 改变数组维度的几种方法小结
2018/08/02 Python
通过python将大量文件按修改时间分类的方法
2018/10/17 Python
python实现飞机大战游戏
2020/10/26 Python
OpenCV 模板匹配
2019/07/10 Python
matlab、python中矩阵的互相导入导出方式
2020/06/01 Python
如何学习Python time模块
2020/06/03 Python
pycharm2020.1.2永久破解激活教程,实测有效
2020/10/29 Python
Sentry错误日志监控使用方法解析
2020/11/12 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
事业单位绩效考核实施方案
2014/03/27 职场文书
2014年党建工作总结
2014/11/11 职场文书
2014年安全保卫工作总结
2014/11/13 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
校园安全教育心得体会
2016/01/15 职场文书
车辆挂靠协议书
2016/03/23 职场文书
Mybatis-plus配置分页插件返回统一结果集
2022/06/21 Java/Android