2012-07-26 180 views
0

我想在CakePHP中创建一个删除按钮,通过特定控制器中的操作删除选定的记录,我希望当用户点击删除按钮时,选择的记录删除,然后同一页面重新加载,然后用户看到其他记录 我的问题是当删除按钮去删除操作,然后页面去删除视图,我不想这样做,因为记录太多,我使用分页,我希望页面在分页的同一页。 谢谢你们cakephp删除按钮

这是我的removeAll行动

function removeAll() { 
     $this->layout = 'ajax'; 
     $this->FormData->setJoin(); 
     if(empty($this->data)) { 
      $this->data = $data; 
      $this->render('remove'); 
     } else { 
      foreach($this->data as $id => $item) 
       if($item == 1) $delete[]=$id; 
       foreach($delete as $deleted) { 
        if(($data = $this->FormData->findById($id)) && ('Approved' !=$data['FormData']['status'] || $this->Authake->isAdmin())){ 
         if($this->Values->deleteAll(array("   {$this->Values->alias}.formdata_id"=>$deleted))) 
         if($this->FormData->delete($deleted)); 
        } else { 
         $this->redirect('authake/user/denied'); 
        } 
     } 
       $this->set('success' ,true); 
       $id=$this->data['id']; 

       $this->redirect('/form/list'.$id); 

    } 

当页面来到这个行动,那么它的视图(imean removeall.ctp)必须加载,但idont想要这个。 我想回到同一页面

+0

你真的需要显示你的代码。否则,它不可能提供帮助。 – JJJ 2012-07-26 16:15:16

+0

请提供一些代码,以便有人可以帮助您。 – 2012-07-26 16:54:31

+1

这是一个荒谬的不可读的问题。你在整个问题中有一段时间?这应该是某种世界纪录。 – 2012-07-26 19:57:32

回答

1

你可以得到你当前页面在这里:

<?php echo $this->Paginator->counter(array(
    'format' => ('{:page}') 
    )); 
?> 

这是解决方案的一部分。

保存这个变量,并在您的控制器中,在您使用新请求时,Paginator内部放置该变量。也许'current_page'或者类似Paginator里面的东西。尝试使用文档。 Google是你的朋友。 :)

+0

我谷歌,但没有什么,毫无疑问关于多次删除 – mirhossein 2012-07-26 16:58:29