2012-04-27 151 views
2

我需要通过excel或pdf导出奏鸣曲管理数据。我怎样才能做到这一点?有没有帮助我做到这一点的软件包?Symfony2:我如何将SonataAdminBundle列表数据导出为Excel表格?

任何想法!?

谢谢。

+0

据我所知SonataAdminBundle有一个内置的用于JSON,XML,CSV和XLS出口支持(开箱的对我来说)。 – 2012-04-27 08:16:13

+0

您能否分享一下文档或内容的链接? – VishwaKumar 2012-04-27 09:51:24

+0

我不认为这个功能已经被记录下来,但是当你配置奏鸣曲时,它就会起作用。登录他们的演示网站,看看它是如何工作的(详情请访问github页面:https://github.com/sonata-project/SonataAdminBundle)。 – 2012-04-27 14:36:58

回答

3

您必须覆盖admin getExportFields()方法。

如果实体有一些(X)一对多或多对多─(X)的关系,你必须覆盖所有领域

public function getExportFields() 
{ 
    $exportFields = parent::getExportFields(); //It's not working in case of *-to many relation, so remove it, but it's ok for small customisation 

    $exportFields["Date"] = 'date';    //if your date is an instance of DateTime, you have to format it 
    $exportFields["User name"] = 'user.name'; // in case of *-to-many relations 
    $exportFields["Status"] = 'statusAsString'; //for customise format implement getStatusAsString() in you entity 
    return $exportFields; 
} 

要自定义报表的种类去下载你要覆盖,删除默认的:

public function getExportFormats() 
{ 
    return array(
     'json', 'xml', 'csv', 'xls' 
    ); 
} 
相关问题