2012-07-06 51 views
0
<?php 
    class User extends AppModel { 
var $name = 'User'; 
var $displayField = 'fname'; 

}綁定條件的模型CakePHP中

如何,我只從這個模型已經一個「1」「站立」回報用戶?我不想從控制器中做到這一點,但從模型中。

[解決方法]在模型

function beforeFind($queryData){ 
    $queryData['conditions']['standing'] = 1; 
    return $queryData; 
} 
+0

什麼叫?對於所有的「發現」電話?所有找到的對象都是 – JohnP 2012-07-06 11:40:55

+0

。 – 2012-07-06 11:43:04

回答

2

做到這將是把一些過濾條件在beforeFind回調的最簡單方法。修改$queryData變量並將您的限制添加到conditions密鑰應該這樣做。

從手工錄入 - http://book.cakephp.org/1.3/en/view/1049/beforeFind

任何查找相關的操作之前調用。在$ queryData傳遞給 此回調包含有關當前查詢的信息: 條件,字段等

如果不希望find操作(基於與在$ queryData選項 決定可能)開始,返回false。否則, 返回可能被修改的$ queryData,或者你想要得到的任何東西 傳遞給查找對象。

您可以使用此回調來限制基於 用戶角色的查找操作,或基於當前負載進行緩存決策。