Sonata管理员使用弹出窗口删除确认

时间:2015-08-10 13:37:08

标签: symfony sonata-admin

我知道经典管理页面已确认删除和修改信息,但该确认是另一页。您是否可以将该确认页面设置为弹出窗口而不是其他页面?

1 个答案:

答案 0 :(得分:1)

这可以使用javascript完成。您可以使用bootbox库。 http://bootboxjs.com/examples.html

HTML:

<a href="#" data-href="id/delete">Delete</a>

在javascript中,为删除按钮创建侦听器:

$("a.confirm-delete").click(function(e) {
    e.preventDefault();
    var $link = $(this);

    bootbox.confirm("Are you sure?", function(result) {
        if (result == true) {
            document.location.assign($link.attr('data-href'));
        }
    });
});

在您的控制器中:

/**
 * @Route("/{id}/delete", requirements={"id" = "\d+"})
 */
public function deleteAction(Request $request, Product $p)
{
    $this->em->remove($p);
    $this->em->flush();

    return new RedirectResponse($this->router->generate('route'));
}