2012-06-25 28 views
0

在這個應用程序中,我有一個租賃模型,它是應用程序的核心。租賃與客戶,地點和設備相關聯。在幾乎所有情況下,我都想「清理」結果,只留下當前處於活動狀態的租賃。但是,我不想在所有情況下都這樣做,那麼標記此問題的最佳方法是什麼?CakePHP :: afterFind()與非主模型

我目前的想法是添加一個Model變量($cleanRentals = true),並在需要時將該標誌設置爲false,並檢查afterFind()中的變量。

回答

0

在Cake的相關模型上保護/清除這樣的數據顯示了Cake的模型系統缺乏的地方。它變得混亂。

但我會考慮創建一個自定義查找,像

$this->Rental->findActive(); 

然後,你可以只使用,當你想只得到有效租金。

查看更多: http://book.cakephp.org/2.0/en/models/retrieving-your-data.html#creating-custom-find-types

+0

看來,我現在在租賃'afterFind'方法的代碼甚至沒有被解僱 - 我有沒有被寫入調試日誌寫入。 –

+0

是的,用Cake做這種事情可能很困難。可能這仍然是一個問題:http://ask.cakephp.org/questions/view/callbacks_not_triggered_for_associated_models_when_using_saveall – michaelhagedon