0

我在我的 SF2 项目中使用 Sonata Admin 进行了以下管理系统设置。当我单击“查看图像”时,我想显示带有图像的弹出窗口/叠加层,或者如果更简单,则显示带有图像的新页面。路由配置为/admin/ayrshireminis/gallery/galleryimage/{id}/view_image

在此处输入图像描述

我在代码路径输入的 CRUDController 中有这个方法:

/**
 * preview the image
 *
 * @return RedirectResponse
 */
public function viewImageAction()
{
    // work out which image we are approving based on the ID in the URL
    $id = $this->get('request')->get($this->admin->getIdParameter());

    $object = $this->admin->getObject($id);

    // couldn't find the object
    if (!$object) {
        throw new NotFoundHttpException(sprintf('unable to find the object with id : %s', $id));
    }

    return $this->render('SonataAdminBundle::empty_layout.html.twig', array('image' => $object));

}

我怎么找不到任何奏鸣曲文档来解决如何简单地显示一个带有图像的空白页面(在奏鸣曲管理布局内)。

4

1 回答 1

1

如果要显示带有图像的空白页面(在 Sonata Admin 布局中):

// src/ACME/YourBundle/Resources/views/empty_layout.html.twig
{% extends "SonataAdminBundle::standard_layout.html.twig" %}
{% block sonata_page_content %}
<img src="{{ image.src }}" />
{% endblock %}

在你的控制器中:

return $this->render('ACMEYourBundle::empty_layout.html.twig', array('image' => $object));

如果您只想要一个没有管理布局的空白页面,相同的树枝模板但没有扩展奏鸣曲管理包的标准布局。

于 2014-12-10T11:14:36.033 回答