在 Symfony 2 项目的 Sonata Admin 中使用自定义视图页面进行图像预览
Posted
技术标签:
【中文标题】在 Symfony 2 项目的 Sonata Admin 中使用自定义视图页面进行图像预览【英文标题】:Using a custom view page for image preview in Sonata Admin in Symfony 2 project 【发布时间】:2015-02-08 12:36:21 【问题描述】:我在我的 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));
我怎么找不到任何 Sonata 文档来解决如何简单地显示一个包含图像的空白页面(在 Sonata Admin 布局中)。
【问题讨论】:
【参考方案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));
如果你只想要一个没有管理布局的空白页面,相同的树枝模板但没有扩展奏鸣曲管理包的标准布局。
【讨论】:
以上是关于在 Symfony 2 项目的 Sonata Admin 中使用自定义视图页面进行图像预览的主要内容,如果未能解决你的问题,请参考以下文章
一个 Symfony 应用程序中的两个 Sonata 管理面板包
带有 LIKE 的 Symfony Sonata SEO 自定义 sql 查询
sonata AdminBlockServiceInterface 弃用,以明确安装 symfony 2.8 + sonata 3.10