1

嘿,我有一个元素,它执行 requestAction 来获取按日期排序的记录。

我无法锻炼/找到的是如何将其限制为仅包含现在之后的日期的记录。

例如,在我的元素中,我类似于:

$stuff = $this->requestAction('stuff/get_stuff/sort:my_date/direction:asc');

现在我应该如何将其限制为仅带有 my_date 的记录?

他们是我应该添加的另一个参数,还是我可以在控制器中的操作中find(...)添加一些东西?get_stuffstuff

向正确方向提供建议或友好推动将不胜感激!

4

2 回答 2

2

这真的取决于这是否总是你想要采取的行动。但这里有几个想法。

  1. 您可以向查找查询添加条件:(复杂查找条件

    $this->Stuff->find('all', array('condition' => array('Stuff.my_date >' => date('Y-m-d'))));

  2. 您可以在实现相同基本流程的模型中添加 beforeFind 回调方法。它将条件添加到给定模型的每个查找查询中。(之前查找

于 2010-08-16T13:38:03.543 回答
0

您可以在控制器中创建一个新方法来查找您需要的记录,然后调用它,并在查找中使用所有自定义参数。然后只需确保您检查它if($this->params['requested'])以确保它仅来自您的requestAction()呼叫和return数据集。

然后确保缓存结果,这样就不会在每次有人加载页面时调用一个新的调度周期而在应用程序上造成巨大的开销。

于 2010-08-16T13:54:15.187 回答