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 相关文章推荐
PHP学习笔记之三 数据库基本操作
Jan 17 PHP
php入门学习知识点三 PHP上传
Jul 14 PHP
比较详细PHP生成静态页面教程
Jan 10 PHP
php使用strtotime和date函数判断日期是否有效代码分享
Dec 25 PHP
百度站点地图(百度sitemap)生成方法分享
Jan 09 PHP
php sybase_fetch_array使用方法
Apr 15 PHP
php利用scws实现mysql全文搜索功能的方法
Dec 25 PHP
php for 循环使用的简单实例
Jun 02 PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
May 28 PHP
浅谈PHP封装CURL
Mar 06 PHP
PHP实现简单登录界面
Oct 23 PHP
php文件上传原理与实现方法详解
Dec 20 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
Uchome1.2 1.5 代码学习 common.php
2009/04/24 PHP
PHP实现随机生成水印图片功能
2017/03/22 PHP
javascript 数组的方法集合
2008/06/05 Javascript
ExtJs中简单的登录界面制作方法
2010/08/19 Javascript
suggestion开发小结以及对键盘事件的总结(针对中文输入法状态)
2011/12/20 Javascript
jQuery获取样式中的背景颜色属性值/颜色值
2012/12/17 Javascript
jquery合并表格中相同文本的相邻单元格
2015/07/17 Javascript
jQuery中的ajax async同步和异步详解
2015/09/29 Javascript
基于JavaScript实现智能右键菜单
2016/03/02 Javascript
JavaScript中三个等号和两个等号的区别(== 和 ===)浅析
2016/09/22 Javascript
JS获取input[file]的值并显示在页面的实现方法
2018/03/09 Javascript
20个最常见的jQuery面试问题及答案
2018/05/23 jQuery
vue.js2.0 实现better-scroll的滚动效果实例详解
2018/08/13 Javascript
在layui下对元素进行事件绑定的实例
2019/09/06 Javascript
JS获取表格视图所选行号的ids过程解析
2020/02/21 Javascript
vue cli3适配所有端方案的实现
2020/04/13 Javascript
vue 封装面包屑组件教程
2020/11/16 Javascript
Python只用40行代码编写的计算器实例
2017/05/10 Python
python图形工具turtle绘制国际象棋棋盘
2019/05/23 Python
Django框架中间件(Middleware)用法实例分析
2019/05/24 Python
python ffmpeg任意提取视频帧的方法
2020/02/21 Python
python如何调用字典的key
2020/05/25 Python
canvas学习笔记之绘制简单路径
2019/01/28 HTML / CSS
美国现代家具购物网站:LexMod
2019/01/09 全球购物
英国奢侈品在线精品店:Hervia
2020/09/03 全球购物
西部世纪面试题
2014/12/05 面试题
迟到检讨书300字
2014/02/14 职场文书
社区班子对照检查材料
2014/08/27 职场文书
作风转变心得体会
2014/09/02 职场文书
殡葬服务心得体会
2014/09/11 职场文书
信息合作协议书
2014/10/09 职场文书
工作时间调整通知
2015/04/24 职场文书
关爱留守儿童捐款倡议书
2015/04/27 职场文书
各类场合主持词开场白范文集锦
2019/08/16 职场文书
SpringMVC 整合SSM框架详解
2021/08/30 Java/Android
BCL经典机 SONY ICF-5900W电路分析
2022/04/24 无线电