我有一个带有优先搜索部分的cakePHP应用程序。当用户应用过滤器时,他们在导航到单个记录然后返回搜索页面时会丢失。
如何/保留此信息的“记忆”并在页面加载时重新应用它的最佳方法是什么?
谢谢保罗
答案 0 :(得分:3)
在讨论存储搜索条件时,在会话中存储参数有一些缺点。
例如,使用会话是存储购物车数据或登录用户的好方法,因为当您打开另一个新选项卡时,此状态也是相同的。
但是想象一下,当您应用某些搜索过滤器时,打开一个包含相同页面的新标签,然后您会看到您在之前打开的页面中填写的相同标准。
答案 1 :(得分:2)
尝试在会话中存储搜索参数。请注意,这不是CakePHP可以为您烘焙的东西。你需要自己实现它。
答案 2 :(得分:0)
如果这有用:我广泛使用此Filter插件进行搜索/过滤: https://github.com/lecterror/cakephp-filter-plugin
这个插件实际上存储了一个会话的搜索查询,所以可能值得看看它是如何做到的。除了存储查询之外,它还会保存每个特定模型的过滤查询,而不会影响其他模型。