使用带有验证器和inputFIlters的Zend Form搜索表单

时间:2012-12-12 09:22:54

标签: doctrine-orm zend-form zend-framework2

是否有一个示例可以看到如何使用Zend Framework2中的Zend Forms实现搜索表单。我需要每个类别的搜索表单,每个类别在数据库中都有不同的列,需要搜索。

我说我有一个国家类别,在这个类别中有许多元素可以搜索,如国名,属于该县的国家,在该国使用的语言等。

因此,当用户键入州或国家或语言时,我需要显示所有可能的详细信息。在Zend Framework2中是否存在类似于模块的东西,或者我应该从头开始实现所有内容。如果我需要从头开始做所有事情,那么解决这个问题的最佳方法是什么。

我正在使用Doctrine ORM与我的数据库进行通信。因此,如果某人已经同时处理了这两个问题,那么您的建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

您想要通过您的学说实体中定义的属性构建您的zend_form吗?你必须

  • 使用反射获取所有属性+数据类型+可以为空?,
  • 通过属性进行迭代(最终实现一种安全机制,对不需要的列进行排序),
  • 在迭代时构建zend_form,创建相应的zend_form_elements

之后,您必须根据从表单中获取的数据创建Doctrine查询,为通过POST获得的每个属性动态设置WHERE语句。

但这不太可行。

在你的情况下,我将建立一个全文搜索引擎,如lucene,弹性搜索或solr。

我不知道ZF2(它是否已经处于生产环境中使用的状态? - 当我们分析它〜一年前,我们决定不使用它),但是ZF1有一个类zend_search可以轻松实现连接到solr衍生物。

我们不使用它虽然导致它的速度慢。也许现在可以在ZF2中实现更好的实现..