【问题标题】:CakePHP how to write a search form to display resultsCakePHP 如何编写一个搜索表单来显示结果
【发布时间】:2011-11-18 21:32:09
【问题描述】:

我正在 CakePHP 2.0 中编写一个搜索表单,目前我已将其设置为运行索引操作和视图(它也发布到索引操作)并针对模型进行验证,以便在搜索中输入任何不正确的内容字段(字段包括日期、价格)元素旁边有一个很好的验证错误消息。基本上它有点像脚手架的添加表单。

如果验证成功,我需要实际运行一个查询并返回一些数据。我不想在索引视图中显示这些数据 - 我应该:

  1. 运行查询,然后呈现不同的视图(这意味着 URL 不会改变 - 不确定我想要那个)。
  2. 将搜索参数存储在会话中,重定向到另一个操作,然后检索搜索详细信息。

还有其他方法吗?

【问题讨论】:

    标签: forms cakephp


    【解决方案1】:

    两个选项都可以。你必须决定你更喜欢什么,不改变网址还是改变它?

    您也可以使用命名参数来传递信息,以便用户可以为他们的请求添加书签,尽管它需要在显示结果的同一页面中进行验证。我通常使用 cakedc 搜索插件来做到这一点。

    回到你的两个选项,如果你的意思是性能更好,我会选择第一个,因为第二个需要加载新的模型/控制器等

    【讨论】:

    • 谢谢 - 如果我想对结果使用分页 - 这将如何影响选项?
    • 如果要使用分页,在调用分页器打印链接时还必须传递所有命名参数,不会影响。我使用带有分页的插件,它工作得很好:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-21
    • 2014-11-29
    相关资源
    最近更新 更多