Hi,

my goal is to allow my users to download a CSV export from my web
application.

In a pure PHP application I would do following:

// We'll be outputting a PDF
header('Content-type: text/csv');

// It will be called downloaded.pdf
header('Content-Disposition: attachment; filename="export.csv"');

What would be a good way to do it with the MVC component?

Here is what I tried so far:

class ReportsExportView extends ezcMvcView
{

    function createResponse()
    {
        $resultBody = 'csv content';

        $result = $this->result;

        // set $result->status ???

        $return = new ezcMvcResponse( $result->status, $result->date,
            $result->generator, $result->cache, $result->cookies,
            $result->content, $resultBody );

        // set $return->status ???

        return $return;
    }

    // Have to implement a dummy method :(
    function createZones( $layout )
    {
        return array();
    }
}

So I override "createResponse" in my View class. But I don't know what
status
to set or how to change ezcMvcResponse object to set a custom header info.

Can you help me here or point me to the documentation that will help me.
Also
let me know if my approach is completely wrong :)

My Feedback:

For an abstract class, "ezcMvcView" seems to  be  too concrete. It contains
logic to
work with the zones concept.

Would it make sense to have an example class to handle custom response
headers?

Regards,
  Philipp
-- 
Components mailing list
Components@lists.ez.no
http://lists.ez.no/mailman/listinfo/components

Reply via email to