我使用 Fuelphp (1.7.1) 和 Orm Model_Soft 来删除和恢复条目。现在我尝试使用 purge() 函数永久删除条目,如文档中提供的那样。无论条目是否被软删除,此函数始终返回 false。为了测试我创建了一个没有关系的简单项目,也存在同样的问题。有谁知道出了什么问题吗?

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

做同样的事:$post->删除()

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

仅更新已删除时间戳,但不会从数据库中删除该条目。

示例控制器:

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');
}
有帮助吗?

解决方案

这是底座的一个错误 Model_Soft 类并已固定在 这次提交. 。将您的 ORM 包更新到最新 1.8/develop 这个问题将会得到解决。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top