删除日期与今天两天的差异 - 学说,QueryBuilder
问题描述:
嗨我有一个表中的任务在我的laravel应用程序。我想从今天起删除两天以外的任务。删除日期与今天两天的差异 - 学说,QueryBuilder
我已经writtern功能:
public function deleteOldTasks(){
$results = $this->entityManager->createQueryBuilder()
->select('cc')->from('\TodoList\Http\Entities\Task', 'cc')
->getQuery()
->getResult();
$today = Carbon::today();
foreach ($results as $result){
$tempDate = $result->getCreatedAt()->format('Y-m-d H:i:s');
$datework = new Carbon($tempDate);
$diff = $datework->diffInDays($today);
if($diff >= 2){
$this->entityManager->persist($result);
}
}
$this->entityManager->flush();
}
该解决方案这么想的工作。这是正确的删除对象的方式?我的意思是在使用查询生成器进行选择后删除,使用方法persist和flush从表中删除每个简单记录?这不适用于我的代码。我会很乐意帮忙的。最好的问候;)
答
你的代码中没有删除方法。在你的flush之前,尝试添加$ this-> entityManager-> remove($ result);