2012-12-04 44 views
0

我有一個模型,一個是CakePHP的獲得最長未修改條目

$hasMany = array('B' => array('order' => 'B.created DESC'), 
       'C' => array('order' => 'C.created ASC') 
      ); 

所以現在我想獲取從我的數據庫A(B,C)的5個最荒涼的條目並沒有得到修改的時間最長(包括B和C'修改'字段)。

我該怎麼做?

/編輯:解釋它,換句話說: 假設我有了喜歡的名字,ADRESS,電子郵件等信息的模型用戶 用戶也有他的網頁上許多模型後。而且他的網頁上也有很多模特兒。 所以我們在用戶中有1:n的關係:Post和User:其他 現在我想獲取我的用戶的最高「修改」值(User.modified,Post.modified或Other.modified)的5位用戶,是所有用戶中最低的一個。 換句話說:最長時間沒有更新他們檔案的5位用戶。

+0

所以要通過在型號中的最後的修改日期的5個最早的條目?然後將這5個最古老的關係包括在內? –

+0

請嘗試澄清 - 很難準確地分辨出您希望達到的目標。 – Dave

+0

你對荒涼這個詞的使用似乎是任意的。 –

回答

0

我預計未來會發生一些數據不一致的情況。我會這樣做。

添加字段用戶表稱爲lastactivity 在AppController.php添加beforeSave功能

public function beforeSave() { 
    $save_data = $this->data; 
    if(isset($save_data['User']['modified']) || isset($save_data['Post']['modified'] || isset($save_data['Other']['modified']))){ 
     $data = array(); 
     $data['User']['id'] = $this->Auth->user('id'); 
     $data['User']['lastactivity'] = date("Y-m-d H:i:s"); 
     $this->User->save($data); 
    } 

}