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关于IE下的iframe跨域导致session丢失问题解决方法

今天搞的一个登录页面,被别的网站用iframe嵌进去后,死活无法登录(只在IE中存在这种情况)。 很明显,session无法被保存。但是直接在地址栏打开那个登录页面,一切都正常啊。真是奇...

PHP使用PDO操作sqlite数据库应用案例

本文实例讲述了PHP使用PDO操作sqlite数据库。分享给大家供大家参考,具体如下: 1、需求: 已知: 1)、一个json文件,里面是一个二维数组,数组解析出来为: array...

php获取URL中带#号等特殊符号参数的解决方法

例如下面的PHP代码: 复制代码 代码如下: <?php echo $_GET['key']; ?> 当url为http://test.com/c.php&...

php生成图形验证码几种方法小结

我们先来检查一下自己的php是不是打开了gd库。复制代码 代码如下:<?phpif(extension_loaded('gd')) {  echo '你可以使用gd<...

Docker 如何布置PHP开发环境

环境部署一直是一个很大的问题,无论是开发环境还是生产环境,但是 Docker 将开发环境和生产环境以轻量级方式打包,提供了一致的环境。极大的提升了开发部署一致性。当然,实际情况并没有这么...