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 相关文章推荐
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
Nov 18 PHP
php miniBB中文乱码问题解决方法
Nov 25 PHP
php自动加载机制的深入分析
Jun 08 PHP
win7+apache+php+mysql环境配置操作详解
Jun 10 PHP
PHP中ob_start函数的使用说明
Nov 11 PHP
PHP文件缓存类实现代码
Oct 26 PHP
从性能方面考虑PHP下载远程文件的3种方法
Dec 29 PHP
PHP实现的限制IP投票程序IP来源分析
May 04 PHP
PHP实现权限管理功能示例
Sep 22 PHP
Ajax请求PHP后台接口返回信息的实例代码
Aug 21 PHP
Laravel基础-关于引入公共文件的两种方式
Oct 18 PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 28 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
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
Discuz! 6.1_jQuery兼容问题
2008/09/23 Javascript
一行代码实现纯数据json对象的深度克隆实现思路
2013/01/09 Javascript
javascript创建和存储cookie示例
2014/01/07 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
使表格的标题列可左右拉伸jquery插件封装
2014/11/24 Javascript
DOM基础教程之事件类型
2015/01/20 Javascript
详解Bootstrap按钮
2016/01/04 Javascript
jQuery快速实现商品数量加减的方法
2017/02/06 Javascript
javascript内存分配原理实例分析
2017/04/10 Javascript
Nodejs进阶:express+session实现简易登录身份认证
2017/04/24 NodeJs
浅谈vue.js中v-for循环渲染
2017/07/26 Javascript
微信小程序自定义模态对话框实例详解
2017/08/16 Javascript
Vue组件创建和传值的方法
2018/08/17 Javascript
基于React Native 0.52实现轮播图效果
2020/08/25 Javascript
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
简单了解TypeScript中如何继承 Error 类
2019/06/21 Javascript
如何优雅地在Node应用中进行错误异常处理
2019/11/25 Javascript
google广告之另类js调用实现代码
2020/08/22 Javascript
Python入门篇之函数
2014/10/20 Python
python 根据pid杀死相应进程的方法
2017/01/16 Python
使用python判断你是青少年还是老年人
2018/11/29 Python
SpringBoot实现登录注册常见问题解决方案
2020/03/04 Python
Django多个app urls配置代码实例
2020/11/26 Python
Django如何继承AbstractUser扩展字段
2020/11/27 Python
AmazeUI 平滑滚动效果的示例代码
2020/08/20 HTML / CSS
英国现代绅士品牌:Hackett
2017/12/17 全球购物
超级搞笑检讨书
2014/01/15 职场文书
廉洁使者实施方案
2014/03/29 职场文书
2014年计生标语
2014/06/23 职场文书
大学生翘课检讨书范文
2014/10/06 职场文书
教师党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
群众路线自查自纠工作情况报告
2014/10/28 职场文书
2015小学教育教学工作总结
2015/07/21 职场文书
InterProcessMutex实现zookeeper分布式锁原理
2022/03/21 Java/Android