2014-01-09 88 views
0

我正在使用Fuelphp(1.7.1)和Orm Model_Soft刪除和恢復條目。現在我試着用purge()函數永久刪除entrys,就像在文檔中提供的那樣。這個函數總是返回false,如果條目被軟刪除或者沒有。 對於測試我創建了一個沒有關係的簡單項目,也有同樣的問題。有人有什麼想法嗎?Fuelphp使用Model_Soft永久刪除

$post = Model_Post::find($id); 
$post->purge(); 

不相同,如:$後>刪除()

$post = Model_Post::find_deleted($id); 
$post->purge 

僅更新刪除時間戳,但不會刪除數據庫的條目。

例如CONTROLER:

public function action_delete($id = null) 
{ 
    is_null($id) and Response::redirect('posts'); 

    if ($post = Model_Post::find($id)){ 
     //$post->delete(); 
     if($post->purge()==false){ 
      Session::set_flash('error', 'error during deleting'); 
      Response::redirect('posts'); 
     } 
     Session::set_flash('success', 'Deleted post #'.$id); 
    } 
    else{ 
     Session::set_flash('error', 'Could not delete post #'.$id); 
    } 
    Response::redirect('posts'); 
} 
+0

你運行什麼版本的燃料? – Uru

+0

查看代碼'Model_Soft :: purge()'只是調用'parent :: delete()',所以不應該有任何軟刪除交互發生。你確定這不是你正在做的事嗎? (看[1.8 /開發代碼](https://github.com/fuel/orm/blob/9e15948aafe65802f9505effa89fa768e8901de0/classes/model/soft.php#L175)) – Uru

+0

我使用Fuelphp 1.7.1,只是更新了它幾天前。 – HAL

回答

0

這是與基Model_Soft類的錯誤和已被固定在this commit。更新你的ORM包到最新的1.8/develop,這個問題將被解決。

+0

現在,它的工作原理,感謝您的幫助和工作。 – HAL