首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVCGRID CSV导出错误

MVCGRID CSV导出错误
EN

Stack Overflow用户
提问于 2012-04-12 09:42:28
回答 1查看 361关注 0票数 0

我正在尝试导出一个用对象MVCgrid创建的网格。

我发现我可以添加当前页面--对象'MVCGrid_Export‘,而不是提供导出按钮和功能的对象’MVCGrid‘。

顺便说一下,我在导出过程中出现了一个错误:

“致命错误:在第42行的..\agiletoolkit\atk4-addons\misc\lib\Export.php中调用非对象的成员函数getField()”

在该行中,"$b[] =b[]i发现"$this->_getHeaderModel()“的结果是我要导出的模型的字符串,而不是该模型的对象,这是我需要的项。

这是我页面的代码:

代码语言:javascript
复制
class page_resultsShow extends Page {
function initMainPage() {
    $p = $this;
    $gr = $this->add('MVCGrid_Export');
    $gr->setModel('results',array('name','budget','bestapplicants'));

    $gr->addColumnMVC('name');
    $gr->addFormatter('name','link');
    $gr->addQuickSearch(array('name'));
    $gr->addPaginator(20); 
}

//details...
function page_details() {
    ... some code..
}

function defaultTemplate(){
    return array('page/results');
}

}

我想我需要添加一些信息来向网格解释正在处理的模型,但我没有找到方法!!

谢谢你的帮助

EN

回答 1

Stack Overflow用户

发布于 2012-04-23 11:20:36

我们已经为4.2推出了更新的导出模块

请更新atk4 4-加载项和atk4,以确保您在主分支上(现在是4.2)。

语法现在有点不同了,因为Export充当控制器。

代码语言:javascript
复制
class page_index extends Page {
    function init(){
        parent::init();
        $c=$this->add("Grid");
        $c->setModel("A");
        $c->addPaginator(1);
        $c->add("Export");

        $c=$this->add("CRUD");
        $c->setModel("A");
        if ($c->grid){
            $c->grid->addPaginator(1);
        }
        $c->add("Export");
    }
}

从电子邮件到atk4组:

//假设你有网格

代码语言:javascript
复制
$export = $grid->add("Export");

//这将向网格中添加导出xls & export按钮

//如果您有crud:

代码语言:javascript
复制
$export = $crud->add("Export");

//这将向网格中添加导出xls & export按钮

现在,您可以轻松创建新的“解析器”,方法是创建

Export_Parser_Xyz类。

然后将其添加到您的出口中:

代码语言:javascript
复制
$export->add("Export_Parser_Xyz");

非常重要的更新是,在被分页器、过滤器等修改后,它现在使用dq,以便导出所显示的内容。可选,是在默认情况下被删除的限制,但可以在解析器级别上控制。

这将自动向grid/crud添加按钮,并处理来自各自网格/crud数据源的数据流。

注B.!

导出只适用于基于dq的Grid,如果定义了模型,则尝试从模型的字段定义加载标题。PDF解析器在这一点上被忽略了,因为它非常具体,并且需要特定的第三方软件。

如果您希望使用旧的导出模块,请按照lib/Export.php中的说明启用兼容性模式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10121114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档